keepassxreboot / keepassxc

KeePassXC is a cross-platform community-driven port of the Windows application “Keepass Password Safe”.
https://keepassxc.org/
Other
20.15k stars 1.42k forks source link

Automatic database locking does not work with the Xfce screensaver #4969

Closed IngoMeyer441 closed 3 years ago

IngoMeyer441 commented 4 years ago

Overview

Since Xfce 4.14 the desktop environment ships an own screensaver and registers as dbus service org.xfce.ScreenSaver. Support for the xfce screensaver can probably be added like in PR #1249 by simply replacing gnome with xfce.

Steps to Reproduce

  1. Activate "Lock databases when session is locked or lid is closed".
  2. Lock the Xfce screensaver (e.g. by pressing Ctrl+Alt+Del)
  3. Unlock the screensaver
  4. The database is still unlocked

Expected Behavior

The database should be locked when the screensaver is activated.

Actual Behavior

The screensaver state does not influence if the database is locked or not. However, closing the lid or going to sleep locks the database.

Context

KeePassXC - 2.5.4 Revision: dcca5aa

Operating System: Manjaro Linux Desktop Env: Xfce 4.14 Windowing System: X11

phoerious commented 4 years ago

Thank God they introduced their own interface and didn't adhere to boring standards.

PolyMMA commented 3 years ago

This issue persists in KeePassXC - Version 2.6.2. Same steps of reproducing the error are still valid.

KeePassXC - Version 2.6.2
Revision: e9b9582

Qt 5.9.5
Debugging mode is disabled.

Operating system: Ubuntu 18.04.5 LTS
CPU architecture: x86_64
Kernel: linux 4.15.0-122-generic

Enabled extensions:
- Auto-Type
- Browser Integration
- SSH Agent
- KeeShare (signed and unsigned sharing)
- YubiKey
- Secret Service Integration

Cryptographic libraries:
 libgcrypt 1.8.1

additional system info:

System:    Host: ***** Kernel: 4.15.0-122-generic x86_64 bits: 64 gcc: 7.5.0
           Desktop: Xfce 4.12.3 (Gtk 2.24.31) info: gnome-shell,xfce4-panel dm: gdm3
           Distro: Ubuntu 18.04.5 LTS

Info from .xscreensaver settings file in home:

$ cat .xscreensaver 
# XScreenSaver Preferences File
# Written by xscreensaver-demo 5.36 for ***** on Sat Oct 17 01:03:58 2020.
# https://www.jwz.org/xscreensaver/

timeout:    0:04:00
cycle:      0:00:00
lock:       True
lockTimeout:    0:01:00
passwdTimeout:  0:00:30
visualID:   default
installColormap:    True
verbose:    False
timestamp:  True
splash:     True
splashDuration: 0:00:05
demoCommand:    xscreensaver-demo
prefsCommand:   xscreensaver-demo -prefs
nice:       10
memoryLimit:    0
fade:       True
unfade:     False
fadeSeconds:    0:00:02
fadeTicks:  20
captureStderr:  True
ignoreUninstalledPrograms:False
font:       *-medium-r-*-140-*-m-*
dpmsEnabled:    True
dpmsQuickOff:   False
dpmsStandby:    0:06:00
dpmsSuspend:    0:07:00
dpmsOff:    0:08:00
grabDesktopImages:  False
grabVideoFrames:    False
chooseRandomImages: False
imageDirectory: 

mode:       blank
selected:   89

textMode:   url
textLiteral:    XScreenSaver
textFile:   
textProgram:    fortune
textURL:    http://feeds.feedburner.com/ubuntu-news

programs:                                     \
                maze -root                  \n\
  GL:               superquadrics -root             \n\
                attraction -root                \n\
                blitspin -root                  \n\
                greynetic -root                 \n\
                helix -root                 \n\
                hopalong -root                  \n\
                imsmap -root                    \n\
-               noseguy -root                   \n\
-               pyro -root                  \n\
                qix -root                   \n\
-               rocks -root                 \n\
                rorschach -root                 \n\
                decayscreen -root               \n\
                flame -root                 \n\
                halo -root                  \n\
                slidescreen -root               \n\
                pedal -root                 \n\
                bouboule -root                  \n\
-               braid -root                 \n\
                coral -root                 \n\
                deco -root                  \n\
                drift -root                 \n\
-               fadeplot -root                  \n\
                galaxy -root                    \n\
                goop -root                  \n\
                grav -root                  \n\
                ifs -root                   \n\
                unicode -root                   \n\
  GL:               jigsaw -root                    \n\
                julia -root                 \n\
-               kaleidescope -root              \n\
  GL:               moebius -root                   \n\
                moire -root                 \n\
  GL:               morph3d -root                   \n\
                mountain -root                  \n\
                munch -root                 \n\
                penrose -root                   \n\
  GL:               pipes -root                 \n\
                rd-bomb -root                   \n\
  GL:               rubik -root                 \n\
-               sierpinski -root                \n\
                slip -root                  \n\
  GL:               sproingies -root                \n\
                starfish -root                  \n\
                strange -root                   \n\
                swirl -root                 \n\
                triangle -root                  \n\
                xjack -root                 \n\
                xlyap -root                 \n\
  GL:               atlantis -root                  \n\
                bsod -root                  \n\
  GL:               bubble3d -root                  \n\
  GL:               cage -root                  \n\
-               crystal -root                   \n\
                cynosure -root                  \n\
                discrete -root                  \n\
                distort -root                   \n\
                epicycle -root                  \n\
                flow -root                  \n\
  GL:               glplanet -root                  \n\
                interference -root              \n\
                kumppa -root                    \n\
  GL:               lament -root                    \n\
                moire2 -root                    \n\
  GL:               sonar -root                 \n\
  GL:               stairs -root                    \n\
                truchet -root                   \n\
-               vidwhacker -root                \n\
                blaster -root                   \n\
                bumps -root                 \n\
                ccurve -root                    \n\
                compass -root                   \n\
                deluxe -root                    \n\
-               demon -root                 \n\
  GL:               extrusion -root                 \n\
-               loop -root                  \n\
                penetrate -root                 \n\
                petri -root                 \n\
                phosphor -root                  \n\
  GL:               pulsar -root                    \n\
                ripples -root                   \n\
                shadebobs -root                 \n\
  GL:               sierpinski3d -root              \n\
                spotlight -root                 \n\
                squiral -root                   \n\
                wander -root                    \n\
-               webcollage -root                \n\
                xflame -root                    \n\
                xmatrix -root                   \n\
  GL:               gflux -root                 \n\
-               nerverot -root                  \n\
                xrayswarm -root                 \n\
                xspirograph -root               \n\
  GL:               circuit -root                   \n\
  GL:               dangerball -root                \n\
  GL:               engine -root                    \n\
  GL:               flipscreen3d -root              \n\
  GL:               gltext -root                    \n\
  GL:               menger -root                    \n\
  GL:               molecule -root                  \n\
                rotzoomer -root                 \n\
                speedmine -root                 \n\
  GL:               starwars -root                  \n\
  GL:               stonerview -root                \n\
                vermiculate -root               \n\
                whirlwindwarp -root             \n\
                zoom -root                  \n\
                anemone -root                   \n\
                apollonian -root                \n\
  GL:               boxed -root                 \n\
  GL:               cubenetic -root                 \n\
  GL:               endgame -root                   \n\
                euler2d -root                   \n\
                fluidballs -root                \n\
  GL:               flurry -root                    \n\
- GL:               glblur -root                    \n\
  GL:               glsnake -root                   \n\
                halftone -root                  \n\
  GL:               juggler3d -root                 \n\
  GL:               lavalite -root                  \n\
-               polyominoes -root               \n\
  GL:               queens -root                    \n\
- GL:               sballs -root                    \n\
  GL:               spheremonics -root              \n\
-               thornbird -root                 \n\
                twang -root                 \n\
- GL:               antspotlight -root              \n\
                apple2 -root                    \n\
  GL:               atunnel -root                   \n\
                barcode -root                   \n\
  GL:               blinkbox -root                  \n\
  GL:               blocktube -root                 \n\
  GL:               bouncingcow -root               \n\
                cloudlife -root                 \n\
  GL:               cubestorm -root                 \n\
                eruption -root                  \n\
  GL:               flipflop -root                  \n\
  GL:               flyingtoasters -root                \n\
                fontglide -root                 \n\
  GL:               gleidescope -root               \n\
  GL:               glknots -root                   \n\
  GL:               glmatrix -root                  \n\
- GL:               glslideshow -root               \n\
  GL:               hypertorus -root                \n\
- GL:               jigglypuff -root                \n\
                metaballs -root                 \n\
  GL:               mirrorblob -root                \n\
                piecewise -root                 \n\
  GL:               polytopes -root                 \n\
                pong -root                  \n\
                popsquares -root                \n\
  GL:               surfaces -root                  \n\
                xanalogtv -root                 \n\
                abstractile -root               \n\
                anemotaxis -root                \n\
- GL:               antinspect -root                \n\
                fireworkx -root                 \n\
                fuzzyflakes -root               \n\
                interaggregate -root                \n\
                intermomentary -root                \n\
                memscroller -root               \n\
  GL:               noof -root                  \n\
                pacman -root                    \n\
  GL:               pinion -root                    \n\
  GL:               polyhedra -root                 \n\
- GL:               providence -root                \n\
                substrate -root                 \n\
                wormhole -root                  \n\
- GL:               antmaze -root                   \n\
  GL:               boing -root                 \n\
                boxfit -root                    \n\
  GL:               carousel -root                  \n\
                celtic -root                    \n\
  GL:               crackberg -root                 \n\
  GL:               cube21 -root                    \n\
                fiberlamp -root                 \n\
  GL:               fliptext -root                  \n\
  GL:               glhanoi -root                   \n\
  GL:               tangram -root                   \n\
  GL:               timetunnel -root                \n\
  GL:               glschool -root                  \n\
  GL:               topblock -root                  \n\
  GL:               cubicgrid -root                 \n\
                cwaves -root                    \n\
  GL:               gears -root                 \n\
  GL:               glcells -root                   \n\
  GL:               lockward -root                  \n\
                m6502 -root                 \n\
  GL:               moebiusgears -root              \n\
  GL:               voronoi -root                   \n\
  GL:               hypnowheel -root                \n\
  GL:               klein -root                 \n\
-               lcdscrub -root                  \n\
  GL:               photopile -root                 \n\
  GL:               skytentacles -root              \n\
  GL:               rubikblocks -root               \n\
  GL:               companioncube -root             \n\
  GL:               hilbert -root                   \n\
  GL:               tronbit -root                   \n\
  GL:               geodesic -root                  \n\
                hexadrop -root                  \n\
  GL:               kaleidocycle -root              \n\
  GL:               quasicrystal -root              \n\
  GL:               unknownpleasures -root              \n\
                binaryring -root                \n\
  GL:               cityflow -root                  \n\
  GL:               geodesicgears -root             \n\
  GL:               projectiveplane -root               \n\
  GL:               romanboy -root                  \n\
                tessellimage -root              \n\
  GL:               winduprobot -root               \n\
  GL:               splitflap -root                 \n\
  GL:               cubestack -root                 \n\
  GL:               cubetwist -root                 \n\
  GL:               discoball -root                 \n\
  GL:               dymaxionmap -root               \n\
  GL:               energystream -root              \n\
  GL:               hexstrut -root                  \n\
  GL:               hydrostat -root                 \n\
  GL:               raverhoop -root                 \n\
  GL:               splodesic -root                 \n\
  GL:               unicrud -root                   \n\

pointerPollTime:    0:00:05
pointerHysteresis:  10
windowCreationTimeout:0:00:30
initialDelay:   0:00:00
GetViewPortIsFullOfLies:False
procInterrupts: True
xinputExtensionDev: False
overlayStderr:  True
authWarningSlack:   20
droidmonkey commented 3 years ago

Huh, this should be closed. OP coded the fix and we merged it into 2.6.1

PolyMMA commented 3 years ago

Well... It still does not lock in xfce4 on ubuntu 18.

IngoMeyer441 commented 3 years ago

I use the builtin XFCE screensaver (and the fix is only for this screensaver). But you use the XScreensaver which is not recognized by KeePassXC I think. Maybe it uses another yet unsupported dbus interface. :disappointed: