IRC Logs for #lost


2021-06-22

07:16:31 kevin joined the channel
07:31:03 XanClic joined the channel
08:42:00 xq: huhu
14:12:10 kevin: XanClic: Hm, irgendwas mit FUSE und Berechtigungen ist da sowieso komisch... Ich hab writeable=on vergessen und die Datei hat jetzt tatsächlich 0400 als Rechte.
14:12:16 kevin: Aber: openat(AT_FDCWD, "/tmp/test.raw", O_RDWR|O_CLOEXEC) = 4
14:12:21 kevin: Warum tut das?
14:12:34 XanClic: Ist das mit oder ohne default_permissions?
14:12:46 kevin: --export fuse,mountpoint=/tmp/test.raw,id=exp0,node-name=disk
14:13:02 XanClic: default_permissions wird ja nur zusammen mit allow_other übergeben
14:13:11 kevin: Dann wohl ohne
14:13:13 XanClic: Ohne default_permissions ist dem Kernel egal, was für Permissions die Datei hat
14:13:20 XanClic: Und unser Code prüft die auch nicht
14:13:39 kevin: Hm... Das ist eher nicht so gut, oder?
14:13:39 XanClic: Also sind so Sachen wie uid, gid und mode da eigentlich nur freundliche Hinweise
14:13:55 XanClic: Na ja, ohne allow_other ists ja nicht so schlimm, kann ja eh nur der aktuelle Nutzer drauf zugreifen
14:14:15 XanClic: Und wirklich schreiben gibt dann glaub ich schon EPERM
14:14:22 kevin: Ja, aber wenn ich writable=off habe, dann wäre es eigentlich gut, wenn man die Datei nicht RDWR öffnen könnte...
14:14:30 XanClic: Ein bisschen schade ist es
14:14:41 XanClic: Hm, warum eigentlich nicht default_permissions immer übergeben, stimmt schon
14:15:13 XanClic: kannst du ja mit allow-other=on ausprobieren, da sollte das dann nicht gehen
14:16:06 kevin: Ok, qemu-io gibt dann schon "write failed: Permission denied" zurück. Dann hat meine tyndur-VM wohl gar nicht zu schreiben versucht oder den Fehler einfach ignoriert
14:16:27 XanClic: Ja, der Schreibcode guckt dann schon, ob das writable ist oder nicht
14:16:42 kevin: qemu-storage-daemon: --export fuse,mountpoint=/tmp/test.raw,id=exp0,node-name=disk,allow-other=on: Failed to mount FUSE session to export
14:16:47 kevin: Das ist wohl das mit der fuse.conf dann
14:16:48 XanClic: ach EACCES
14:16:51 XanClic: das ist ja schade dann
14:17:32 kevin: qemu-io: can't open device /tmp/test.raw: Could not open '/tmp/test.raw': Permission denied
14:17:34 XanClic: Mir ist jetzt auch keine Möglichkeit eingefallen, das irgendwie schön zu prüfen, sodass man allow_other=auto machen könnte oder so
14:17:44 kevin: Die Meldung hat auch noch Verbesserungspotential, aber das ist mit allow_other
14:17:57 XanClic: Na ja, das kommt ja einfach vom Kernel, da kann ich ja nix für
14:18:09 kevin: Ich hatte meine fuse.conf allerdings auch noch nie bewusst berührt und da war das user_allow_other auskommentiert
14:18:14 XanClic: schade
14:18:26 XanClic: vielleicht hab ichs doch mal vor Urzeiten reingetan
14:18:31 XanClic: für irgendein FUSE-ntfs oder so
14:18:47 XanClic: (warum schreib ich eigentlich FUSE-ntfs und nicht fuse-NTFS)
14:18:49 XanClic: (Mysterien)
14:18:57 kevin: Nachdem ich die Manpage angeschaut habe, fand ich es auch logisch, dass man das nicht per Default an hat
14:19:04 kevin: Weil damit ein normaler User root-Dateien anbieten kann
14:19:10 kevin: Womöglich sogar SUID?
14:19:30 XanClic: ach so, aber man kann die ohne allow_other nicht ausführen, weil die sich dann nicht selbst lesen könnten?
14:19:40 XanClic: müsste ich mal ausprobieren
14:19:41 kevin: Gute Frage
14:20:05 kevin: Oder war SUID auf FUSE sowieso deaktiviert?
14:20:31 XanClic: eigentlich muss ich sagen, so richtig seh ich nicht die Gefahr darin, Dateien anzubieten, die einem anderen User gehören
14:20:36 XanClic: außer suid halt
14:20:44 kevin: "Filesystems are mounted with nodev,nosuid by default, which can only be overridden by a privileged user."
14:20:49 kevin: Also ist das auch nicht das Problem
14:22:09 kevin: Wie auch immer, dann muss allow-other=off wohl Default bleiben, oder?
14:22:16 XanClic: vielleicht sollte ich einfach Miklos direkt fragen
14:22:45 XanClic: Na ja, wenn uns keine einfache Möglichkeit zum Erkennen einfällt, damit man allow-other=auto machen könnte…
14:24:15 kevin: auto wäre natürlich das beste
14:24:34 XanClic: fuse_session_mount() gibt halt auch nur 0 oder -1 zurück
14:24:46 XanClic: natürlich könnte man trotzdem einfach nochmal ohne allow_other probieren…
14:25:26 kevin: Jo, könnte man. Wird halt ein bisschen hässlich, wenn man irgendwann für mehrere Optionen durchprobieren muss.
14:27:37 XanClic: fuse(8) sagt, fuse.conf kann nur user_allow_other und mount_max enthalten, also hoff ich, dass es bei der einen bleibt, die man ausprobieren muss
14:27:57 XanClic: Wenn wir mal Optionen wollen, die nur root übergeben kann, dann gibts ja getuid() :P
14:30:43 kevin: allow-other=auto ist dann ein Patch obendrauf statt einen zu ersetzen, oder?
14:31:19 XanClic: Irgendwie so, aber default_permissions muss ja noch geändert werden
14:31:23 XanClic: Dass das immer übergeben wird
14:33:03 kevin: Das ist aber auch nochmal ein separater Patch
14:33:15 kevin: Hat jedenfalls nichts mit allow-other zu tun
14:33:26 kevin: Aber vielleicht ein Patch, der vor den anderen kommen sollte statt danach
14:33:31 XanClic: ja
14:34:01 XanClic: hab deine Frage so interpretiert, ob man die v1 schon so applien könnte, und darauf ist meine Antwort „eigentlich wöllte ich da schon eine v2 schicken, in der das alles drin ist“
14:34:19 kevin: Ja, das war schon die Frage ;-)
14:34:24 XanClic: :)
14:34:39 kevin: Bei euch sagt man "wöllte"?
14:34:58 XanClic: ich sag das
14:35:31 XanClic: ist das so ein Ding wie „‚sägte‘ sagt man nicht, das klänge ja doof“?
14:35:31 kevin: Nachwirkungen deiner Zeit in Stuttgart? ;-)
14:35:56 XanClic: bisher war mir nicht bewusst, dass das ein Regionalding ist
14:36:07 XanClic: muss zugeben, inzwischen sag ich leider viertel vor und viertel nach
14:37:03 kevin: Dass es so schlimm um dich steht, hätte ich nicht gedacht *g*
14:37:53 XanClic: :/
14:40:04 kevin: Wobei ich das ja in der Regel noch ohne längere Denkpause korrekt interpretiert kriege. Beim englischen "half X" wird es dann schon schwieriger.
14:50:57 XanClic: Das ist ja auch einfach nur gemein
21:02:22 Paddy joined the channel
21:55:22 kevin joined the channel