kscreenlock_greet insecure with multiple X screens
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
KDE Base Workspace |
Invalid
|
High
|
|||
kde-workspace (Ubuntu) |
In Progress
|
Medium
|
TJ |
Bug Description
When using multiple X screens (3 in this case), kscreenlocker-greet behaves very badly and insecurely.
It appears to be drawing the desktop background image/screensaver images for all three X screens to the primary screen (0) and doesn't blank/screensave the monitors belonging to screens 1 and 2 (which leaves their contents in view), and it displays 2, maybe 3 greeter dialogs (1 may be hidden) on the primary X screen, but only accepts typed password input in 1 of them (the primary X screen's dialog).
Reading the source-code at
ksmserver/
it appears to iterate the screens via desktop(
There may be an underlying dependencies on the QT libraries that cause/affect this but someone familiar with the code would need to investigate it.
Related branches
- Dmitry Shachnev: Needs Resubmitting
- Ubuntu branches: Pending requested
-
Diff: 596 lines (+545/-2)6 files modified.pc/applied-patches (+1/-0)
.pc/kubuntu_greeters_on_correct_X_screen.diff/ksmserver/screenlocker/greeter/greeterapp.cpp (+513/-0)
debian/changelog (+7/-0)
debian/patches/kubuntu_greeters_on_correct_X_screen.diff (+21/-0)
debian/patches/series (+1/-0)
ksmserver/screenlocker/greeter/greeterapp.cpp (+2/-2)
description: | updated |
Changed in kdebase-workspace: | |
importance: | Unknown → High |
status: | Unknown → New |
Changed in kdebase-workspace: | |
status: | New → Invalid |
no longer affects: | kdebase-workspace |
Changed in kdebase-workspace: | |
importance: | Unknown → High |
status: | Unknown → New |
Changed in kdebase-workspace: | |
status: | New → Invalid |
If you have 2 videocards e.g.
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Turks [Radeon HD 6670]
02:00.0 VGA compatible controller: NVIDIA Corporation GF106 [GeForce GTS 450] (rev a1)
And configured two screens e.g. :0.0 and :0.1 locker-qml will lock only one screen
Reproducible: Always