Version: unspecified (using KDE 4.5.2) OS: Linux I have configured kwalletmanager to close the wallet when the screensaver starts, but it still doesn't close it. If I try to close it by hand, it warns that it can't close it cleanly. I had no way to determine what application keeps it open, but it should force the closure when the screensaver starts anyway. Reproducible: Always
This problem still exists in 4.7.4 Kwallet is not closed, when screensaver starts.
This is a serious security problem. Message when trying to close wallet (from menu after secondary mouse click in kwalletmanager) is: "Unable to close wallet cleanly. It is probably in use by other applications. Do you wish to force it closed?"
In KDE 4.11, I can see which applications have the wallet open. (The kwalletmanager version number, 1.10, hasn't changed from the version in KDE 4.10, but it is in fact a different version.) These applications include Kontact and KDE Wallet Manager itself, so the second paragraph of my comment 2 is irrelevant, and the message I mentioned there is valid. Force closing the wallet, or File/Close All Wallets (which force closes if necessary, without prompting), has the desired effect, and this is what needs to happen automatically when the screensaver starts, if the system is configured to do so.
*** Bug 307874 has been marked as a duplicate of this bug. ***
On my system the wallet actually closes when screen saver kicks in. Can you confirm you still have this bug please?
Yes. The "close when unused for: ..." is working, the "Close when screensaver starts" isn't.
Yes, the problem is still present. I'm using Kubuntu 13.04 with the KDE 4.11 PPA. The 4.11.1 PPA isn't available yet, but I don't see any relevant fixes in the list of changes.
Created attachment 82165 [details] Screen capture showing qdbusviewer capturing screen saver signals
(In reply to comment #8) > Created attachment 82165 [details] > Screen capture showing qdbusviewer capturing screen saver signals I'm using ArchLinux, with KDE compiled from sources (kdesrc-build), not the ones provided by their repositories. When the screen saver kicks-in, the wallet gets close by kwalletd. If that's not the case for you, perhaps there's a problem with the screen-saver logic on your distribution. Could you (both of you, if possible) please do following test on your systems: - launch qdbusviewer - on the session bus, connect to org.freedesktop.ScreenSaver signal: ActiveChanged * please see the attached screen-shot * the connect command is available by right clicking the signal in the right pane - wait for the screen saver to kick-in Do you see the notifications in the bottom pane, as shown in my screen-shot?
I see the same thing as in your screenshot, the only difference is I have 1.11 instead of 1.13
I too see the same messages as in your screenshot, except I have 1.14 instead of 1.13.
And the same happens with the Kubuntu 4.11.1 PPA. (Signal from :1.12 this time.)
Could you please perform the following steps 1. launch konsole then type the following commands pkill kwalletd # to kill the instance launched with session open kwalletd # to restart kwalletd 2. launch kwalletmanager and open the wallet 3. wait for the screen saver to kick-in 4. unlock screen saver then check wallet was closed in kwallet manager Could you confirm that the walletd was actually close at step 4?
Yes, at step 4 the wallet is closed! Interesting.
OK, I now know how to fix it. Stay tuned. Thanks.
Git commit 744b7fa0e92584667fd5bc77e74b3ba62db3ddab by Valentin Rusu. Committed on 09/09/2013 at 13:03. Pushed by vrusu into branch 'KDE/4.11'. Add retry timer to the screen saver connection logic FIXED-IN: 4.11.2 It seems that on some systems the kwalletd comes before the screen saver service, and so it fails to connect to it. As a result, it fails to receive ActiveChanged signal, and wallets are never closed, even if the KCM option for this is ticked. That is before the connection is attempted only during startup. This commit adds a retry timer to reattempt connection. The connection is reattempted every 10s, as long as kwalletd runs and the screen saver service is not available. M +26 -8 kwalletd/kwalletd.cpp M +3 -0 kwalletd/kwalletd.h http://commits.kde.org/kde-runtime/744b7fa0e92584667fd5bc77e74b3ba62db3ddab
Git commit 32b7cc40417fd98fa2f798fc36f41fbb73784b71 by Valentin Rusu. Committed on 09/09/2013 at 13:03. Pushed by vrusu into branch 'master'. Add retry timer to the screen saver connection logic FIXED-IN: 4.11.2 It seems that on some systems the kwalletd comes before the screen saver service, and so it fails to connect to it. As a result, it fails to receive ActiveChanged signal, and wallets are never closed, even if the KCM option for this is ticked. That is before the connection is attempted only during startup. This commit adds a retry timer to reattempt connection. The connection is reattempted every 10s, as long as kwalletd runs and the screen saver service is not available. M +26 -8 kwalletd/kwalletd.cpp M +3 -0 kwalletd/kwalletd.h http://commits.kde.org/kde-runtime/32b7cc40417fd98fa2f798fc36f41fbb73784b71
I cannot test the fix on my system, though I think it'll work. Please close this bug when you get the future service release and confirm it's fixed for you.
I replaced the distribution version with the patchen one, it works all right.