Use out-of-band communication between ksld and greeter
The screenlocker_greet needs to tell the parent ksld process which windows it created. Ksld sends input events to these windows. So far this was based on an X property on the window. Unfortunately ksld didn't validate whether the windows tagged with this property belong to the screenlocker_greet process it started. With this change the communication for announcing windows is moved away from the X11 protocol and instead a custom Wayland protocol is used. Ksld starts a KWaylandServer when the greet process gets started. It creates anonymous unix sockets for the connection and passes one filedescriptor to the started greeter process. The check for the X property is removed in ksld and instead only windows ids passed through the Wayland socket connection are accepted. REVIEW: 121429
parent
8bcac59d
Please register or sign in to comment