Review Request 121429: Use out-of-band communication between ksld and greeter

David Edmundson david at davidedmundson.co.uk
Mon Dec 15 13:39:37 UTC 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/121429/#review72044
-----------------------------------------------------------


So basically we have a named pipe and we we pass back the wID of the lock screen to ksld?

I'm not sure what benefit we have from using Wayland as the protocol as opposed to a private p2p DBus session or just writing it out as a simple integer on a socket..but I can't see any harm either.

+1


ksmserver/screenlocker/greeter/greeterapp.cpp
<https://git.reviewboard.kde.org/r/121429/#comment50241>

    AFAIK you don't need to pass "this" in the [] when you have "this" as the receiver for the slot.



ksmserver/screenlocker/waylandserver.cpp
<https://git.reviewboard.kde.org/r/121429/#comment50237>

    FYI you end up calling this twice. Though it doesn't seem like that will cause a problem.


- David Edmundson


On Dec. 15, 2014, 9:29 a.m., Martin Gräßlin wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/121429/
> -----------------------------------------------------------
> 
> (Updated Dec. 15, 2014, 9:29 a.m.)
> 
> 
> Review request for Plasma, Àlex Fiestas and David Edmundson.
> 
> 
> Repository: plasma-workspace
> 
> 
> Description
> -------
> 
> 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.
> 
> 
> Diffs
> -----
> 
>   ksmserver/screenlocker/ksldapp.cpp 22698ce37e9d4be17126111b3ded8133f7c3baa6 
>   ksmserver/screenlocker/lockwindow.h 9938d201269c89a24c9c0bd6275aa5f731bb5535 
>   ksmserver/screenlocker/lockwindow.cpp 3aa963a59e21636862f5ca59e220bbea3bd41ff9 
>   ksmserver/screenlocker/protocols/ksld.xml PRE-CREATION 
>   ksmserver/screenlocker/waylandserver.h PRE-CREATION 
>   ksmserver/screenlocker/waylandserver.cpp PRE-CREATION 
>   ksmserver/screenlocker/greeter/greeterapp.h b92b13b63365a9026dba5d71b772dcd8c9ee3d3b 
>   ksmserver/screenlocker/greeter/greeterapp.cpp 30d1821bdba38028959f3457e900a1b32e628192 
>   ksmserver/screenlocker/greeter/main.cpp 12e570107d0cba851b8978131d730b27924529bb 
>   ksmserver/screenlocker/ksldapp.h 095424c9845c134aa156917aeb6c8ddf31e8d25a 
>   CMakeLists.txt c6d89c14b05f5639937aee5692d305fa2faed974 
>   ksmserver/screenlocker/CMakeLists.txt 5378a10df2be70cee95b5612c23046eae639f610 
>   ksmserver/screenlocker/greeter/CMakeLists.txt 10c473488f08354096f68784b9240392a444af5f 
> 
> Diff: https://git.reviewboard.kde.org/r/121429/diff/
> 
> 
> Testing
> -------
> 
> Running ksmserver with the patch. Lock/unlock working, my exploit is failing.
> 
> 
> Thanks,
> 
> Martin Gräßlin
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20141215/205d50ea/attachment.html>


More information about the Plasma-devel mailing list