![]() Registered Member ![]()
|
Hello Folks,
I have a requirement to customize the kde screenlock application with an additional button apart from 'switch users' and the 'unlock' button, which i have been able to do albeit with a small problem. I downloed kde-workspace source,modified lockdlg.cc and lockdlg.h to add the addtional button and rebuild it.Im running into a problem where i cannot unlock my desktop after clicking the 'lock' in newly build kscreenlock.The error is see is 'Authentication failure'.I believe 'kscreenlock' calls 'kcheckpass' and for some reason its returns a failure.Do you guys have any pointers to where have i gone wrong?I can provide more info if needed. Thanks. |
![]() Administrator ![]()
|
In order to be able to interact with the system authentication framework (usually PAM) it is necessary for kcheckpass to have root privileges - which is accomplished through ensuring it is a setsuid binary. If you have compiled kde-workspace as a ordinary user, then it is not possible for the installation process to set the kcheckpass binary to be setsuid, so this step is silently skipped.
To do this manually, run the following:
You should also ensure the privileges on the file are 755 - otherwise users will be able to alter the binary and may be able to exploit that to obtain root access.
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
![]() Registered Member ![]()
|
Hi bcooksley,
I figured out that the problem was in my cmake_install.cmake file.It was looking for a file called 'mkpamserv' under the wrong directory.So,now i have a kde lock screen,with a custom button which only works on my machine when i unlock it or rather it works on hosts where the custom kscreenlocker has been built. When i copy just the binary 'kscreenlocker' to another machine and lock and try to unlock it fails with an error ''Unlocking failed". Syslog has the following message
How do i build a kscreenlocker which can work on any machine,regardless of where it was built ? |
![]() Administrator ![]()
|
Hmm - i'm not sure why that would be occurring. Are you modifying the same version of KDE as is shipped with your current distribution of choice?
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
Registered users: Bing [Bot], Google [Bot], kde-naveen, Sogou [Bot], Yahoo [Bot]