Skip to content
Commit c2fd8526 authored by Tobias Berner's avatar Tobias Berner Committed by Tobias Berner
Browse files

kcheckpass: Add support in for non-Linux platforms via kevent.

Summary:
* signalfd() is a Linux specific api:
  SIGNALFD(2):
  ```
  CONFORMING TO         top

       signalfd() and signalfd4() are Linux-specific.
   ```
* FreeBSD and OSX and others can use the widely available kevent/kqueue api for a similar effect.

We let the kernel notify us via kevent() [1], if there is a SIGUSR1 or SIGUSR2, and then fetch the signal using sigwaitinfo() [2].

[1] https://www.freebsd.org/cgi/man.cgi?query=kqueue&sektion=2
[2] https://www.freebsd.org/cgi/man.cgi?query=sigwaitinfo&sektion=2

This seems to work fine on FreeBSD.

Reviewers: #freebsd, graesslin

Subscribers: plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D5825
parent e4484f0d
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment