tomm / cryptkeeper

A system tray (gnome, xfce, kde) applet that manages EncFS encrypted folders.
http://tom.noflag.org.uk/cryptkeeper.html
GNU General Public License v3.0
54 stars 17 forks source link

Cryptkeeper always crashes when more users are logged in #3

Open valoun opened 13 years ago

valoun commented 13 years ago

In case there are two users (ondra & jarka) logged in on the computer, both using GVFS FUSE (gnome virtual filesystem FUSE plugin). Output of mount looks e.g. like this:

ondra@hippie:/home$ mount /dev/sda6 on / type ext4 (rw,errors=remount-ro,commit=600) proc on /proc type proc (rw,noexec,nosuid,nodev) none on /sys type sysfs (rw,noexec,nosuid,nodev) fusectl on /sys/fs/fuse/connections type fusectl (rw) none on /sys/kernel/debug type debugfs (rw) none on /sys/kernel/security type securityfs (rw) none on /dev type devtmpfs (rw,mode=0755) none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620) none on /dev/shm type tmpfs (rw,nosuid,nodev) none on /var/run type tmpfs (rw,nosuid,mode=0755) none on /var/lock type tmpfs (rw,noexec,nosuid,nodev) /dev/sda5 on /boot type ext2 (rw) /dev/sda8 on /home type ext4 (rw,commit=600) binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev) gvfs-fuse-daemon on /home/ondra/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=ondra) gvfs-fuse-daemon on /home/jarka/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=jarka) encfs on /home/data/spolecne/Sifrovane type fuse.encfs (rw,nosuid,nodev,default_permissions,user=ondra)

When you run cryptkeeper as user 'ondra' and click on the tray icon it crashes. The tail of strace output looks like this:

lstat64("/proc", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0 lstat64("/proc/sys", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0 lstat64("/proc/sys/fs", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0 lstat64("/proc/sys/fs/binfmt_misc", {st_mode=S_IFDIR|0755, st_size=0, ...}) = 0 lstat64("/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat64("/home/ondra", {st_mode=S_IFDIR|0755, st_size=16384, ...}) = 0 lstat64("/home/ondra/.gvfs", {st_mode=S_IFDIR|0500, st_size=0, ...}) = 0 lstat64("/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat64("/home/jarka", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat64("/home/jarka/.gvfs", 0xbf9a799c) = -1 EACCES (Permission denied) --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++ Segmentation fault

jmtd commented 13 years ago

I believe this is fixed by https://github.com/jmtd/cryptkeeper/commit/86b960a528df7118ab43b629bbd906db7459300d