Erstellt vor 8 Jahren

Geschlossen vor 8 Jahren

#863 closed defect (fixed)

davfs2 (webdav) Paket überarbeiten

Erstellt von: oliver Verantwortlicher:
Priorität: normal Meilenstein: freetz-1.2
Komponente: packages Version: devel
Stichworte: Beobachter:
Product Id: Firmware Version:

Beschreibung (zuletzt geändert von oliver)

Das davfs2 Paket benötigt dringend ein Update:

  1. Integration in den AVM webdav (ähnlich Samba) (./)
  1. Es sollte vom coda auf fuse Modul umgestellt werden. (./)
    • Dabei fällt mir gerade auf, dass ntfs-3g das fuse Modul scheinbar gar nicht mehr benötigt?!
  1. Das mount-Skript liefert 0 als Rückgabe-Wert, obwohl mounts fehlschlagen. (./)
  1. Falls neon ohne SSL gebaut wird können keine https Shares gemountet werden. Ist zwar klar, aber der Fehler ist momentan nicht ersichtlich. (./)
  1. Probleme mit Umlauten (Server oder Client Problem)
    • Hängt wohl mit der Art des Zugriffs zusammen (Samba, FTP, Konsole)?

Anhänge (2)

busybo_mount_helper.patch (1.1 KB) - hinzugefügt von oliver vor 8 Jahren.
+35 bytes
remove_webdav.patch (1.4 KB) - hinzugefügt von oliver vor 8 Jahren.

Alle Anhänge herunterladen als: .zip

Änderungshistorie (33)

comment:1 Geändert vor 8 Jahren durch oliver

  • Beschreibung geändert (Diff)

comment:2 Geändert vor 8 Jahren durch cuma

Wenn sich dem jemand annimmt, könnte er noch die Zerifikate nach /tmp/flash/davfs2/ verschieben und ein optionales "no lock" für die .conf-Dateien einbauen, da dies manche Hoster nicht unterstützen.
Davon abgesehen hab ich das Problem, dass ich Verzeichniss anlegen und löschen kann, Dateien auch lesen, aber keine Dateien anlegen (touch) oder darauf kopieren kann. Sie verschwinden einfach nach ein paar Sekunden

comment:3 Geändert vor 8 Jahren durch cuma

Sollte man per Config.in nicht ausschliessen, dass AVM+Freetz webdav zusammen im Image sind? Momentan funktioniert dann AVM's nicht, da die Pfade nicht existieren

comment:4 Geändert vor 8 Jahren durch cuma

(In [5662]) davfs2:

  • add empty files to prevent error messages
  • create /tmp/flash/$DAEMON at "load"

(refs #863)

comment:5 Geändert vor 8 Jahren durch er13

@cuma: funktioniert r5662 auch dann, wenn /etc/davfs2 nicht schreibbar ist?

comment:6 Antwort: Geändert vor 8 Jahren durch cuma

Denke schon, da es ein Link auf /var/davfs2 ist (hier).
Wenn ich mich recht erinnere funktioniert avm-davfs2 deshalb nicht.

und weiter oben in config() wird es angelegt
mkdir -p /var/$DAEMON


Man müsste das ganze Package aber mal komplett überarbeiten, da ist viel Unsinn drin. Habe zB nicht verstande, weshalb man diese 2 zusätzlichen Skripte braucht:
/etc/default.davfs2/webdav_mount
/etc/default.davfs2/webdav_umount
Und braucht man diese 2 Links in /sbin ?
Außerdem sagt "mount.davfs":

To mount a WebDAV-resource don't call mount.davfs directly, but use `mount' instead.

comment:7 als Antwort auf: ↑ 6 Geändert vor 8 Jahren durch er13

Replying to cuma:

Denke schon, da es ein Link auf /var/davfs2 ist (hier).

alles klar, hab' nicht gewusst, dass es ein Symlink ist… Ohne die Information hat das Changeset etwas komisch ausgeschaut…

comment:8 Geändert vor 8 Jahren durch cuma

  1. Integration in den AVM webdav (ähnlich Samba)

Was genau stellst du dir vor? Dass es gestartet und gestoppt wird wenn ein USB-Stick eingesteckt wird? Das könnte man evtl mit external-services machen

  1. Es sollte vom coda auf fuse Modul umgestellt werden.

keine Ahnung wie das funktionieren soll, ich bekomme jedenfalls momentan die Meldung

can't open fuse device
trying coda kernel file system
coda device opened successfully
  1. Das mount-Skript liefert 0 als Rückgabe-Wert, obwohl mounts fehlschlagen.

Fertig, hab ich das Skript umgeschrieben. Hab auch use_locks noch eingebaut. Das Umounten funktioniert jetzt auch wenn man den "Host" geändert hat

  1. Falls neon ohne SSL gebaut wird können keine https Shares gemountet werden. Ist zwar klar, aber der Fehler ist momentan nicht ersichtlich.

Mit #964 sollte man das lösen können

dass ich Verzeichniss anlegen und löschen kann, Dateien auch lesen, aber keine Dateien anlegen (touch) oder darauf kopieren kann. Sie verschwinden einfach nach ein paar Sekunden

Dies Problem hab ich nur bei GMX. Bei WEB funktioniert es. Hat jemand eine Idee??

Sollte man per Config.in nicht ausschliessen, dass AVM+Freetz webdav zusammen im Image sind?

Meinungen?

To mount a WebDAV-resource don't call mount.davfs directly

Funktioniert mit mount -t davfs2 leider nicht, muss wohl so bleiben

comment:9 Geändert vor 8 Jahren durch oliver

zu 1.) Wenn im menuconfig webdav ausgewählt wird, dann soll das auch die Funktion des AVM webdav übernehmen, falls die Box das hat. Am Besten so, dass man nichts extra einrichten muss (vom Start mal abgesehen).

zu 2.) Ist das fuse Modul geladen oder ist fuse fest im Kernel? Mehr als ein modprobe coda sehe ich im Package nicht.

Exklusiv: Klar, Abhängigkeiten wie bei Samba?

mount.davfs: Vermutlich haben wir die busybox nicht mit diesem mount helper Support gebaut!?

Geändert vor 8 Jahren durch oliver

+35 bytes

comment:10 Geändert vor 8 Jahren durch cuma

(In [5701]) davfs2 (refs #863)

  • refactored webif & scripts
  • renamed WebDAV/DavFS2 to DavFS2
  • added use_locks
  • avm settings could now be used
  • disabling avm's davfs2-plugin
  • selecting busybox's MOUNT_HELPERS

comment:11 Geändert vor 8 Jahren durch cuma

ich denke dass jetzt nur noch offen ist:

  • fuse wegen #1020
  • ssl wegen #964
  • bei mir Dateien nicht schreibbar sind…

comment:12 Geändert vor 8 Jahren durch er13

(In [5703]) davfs2:

  • fix a clear typo from r5701 (untested, just from reading)
  • refs #863

comment:13 Antwort: Geändert vor 8 Jahren durch cuma

Nutzt irgendjemand dieses Paket? Oder hab nur ich den Fehler, dass keine Dateien geschrieben werden können?

comment:14 Geändert vor 8 Jahren durch oliver

AVM hat wie bei allen verwendeten Tools wie wild an davfs rumgepatcht. Daher bleibt die Analyse des 17.000 Zeilen diff erstmal aus.
AVMs mount.davfs greift auch ohne ein Zertifikat auf https Dienste zu. Entweder bauen wir auch sowas ein oder wir brauchen auch noch ein Server Cert für Dienst 0 und müssen bei der Erstellung der davfs2.conf den Parameter servercert reinpatchen.

comment:15 Geändert vor 8 Jahren durch cuma

Da davfs2 bei mir eh nicht funktioniert, habe ich es nicht mehr installiert. Aber soweit ich mich erinnere, kann man beim avm-account die Checkbox für das Zertifikat und no-locks ändern und auch ein Zertifikat eingeben.
Für die Zertifikate wäre eine allgemeinere Lösung schon gut. Am besten auch gleich für andere Packages wie zB opendd. Fest ins svn/Package integrieren wäre wohl nicht so gut, falls sich da was ändert. web.de und gmx.de haben übrigens die das gleich root-ca. Wo bekommt AVM denn das Zertifikat her? Oder wir sowas wie wget's "—no-check-certificate" genutzt?

comment:16 Geändert vor 8 Jahren durch oliver

(In [5807]) * davfs2: Use fuse module instead of coda

comment:17 Geändert vor 8 Jahren durch cuma

In r5808: SSL wird nur genutzt wenn es beim make aktiviert ist

comment:18 als Antwort auf: ↑ 13 Geändert vor 8 Jahren durch oliver

Replying to cuma:

Nutzt irgendjemand dieses Paket? Oder hab nur ich den Fehler, dass keine Dateien geschrieben werden können?

Ich kann mit dem Freetz davfs2 auch keine Dateien hochladen. Aus dem Debuglog werd ich auch nicht schlau.

comment:19 Geändert vor 8 Jahren durch cuma

Evtl bräuchte man für die 16MB Boxen mit FW .86 noch einen AVM-webdav Remove-Patch

Geändert vor 8 Jahren durch oliver

comment:20 Antwort: Geändert vor 8 Jahren durch oliver

Anbei der remove webdav patch.

Ich bin immer noch dafür dieses webdav_control aus den Dateien inetdsamba und inetdftp zu entfernen. Wir könnten außerdem (wie AVM) ein Skript für onlinechanged erstellen. So dass der mount dem Verbindungsstatus "folgt".

comment:21 Geändert vor 8 Jahren durch er13

(In [5904]) davfs2:

comment:22 als Antwort auf: ↑ 20 Geändert vor 8 Jahren durch cuma

Replying to oliver:

Ich bin immer noch dafür dieses webdav_control aus den Dateien inetdsamba und inetdftp zu entfernen. Wir könnten außerdem (wie AVM) ein Skript für onlinechanged erstellen. So dass der mount dem Verbindungsstatus "folgt".

Man müsste sich das Verhalten noch genau anschauen.

  • Wird der Verbindungsstatus nicht automatich erkannt?
  • Da davfs2 evtl auf USB-Stick cacht, bin ich nicht sicher ob man AVM-webdav_control einfach entfernen kann

comment:23 Geändert vor 8 Jahren durch oliver

Das scheint es gewesen zu sein. Zumindest sind die über die Box geschriebenen Dateien auch über den Webzugriff auf das 1und1 Smartdrive sichtbar.

Ich hab noch Probleme mit Umlauten. Ein "server_charset UTF-8" ändert zwar die Anzeige des Namens. Aber korrekt ist sie immer noch nicht.

comment:24 Geändert vor 8 Jahren durch oliver

(In [5965]) * Add remove webdav patch (refs #863)

comment:25 Geändert vor 8 Jahren durch cuma

Der webdav-remove-patch lässt sich nur auswählen wenn kein freetz-davfs2 ausgewählt ist. Können nicht trotzdem die /lib/libexpat.so* und /lib/libneon.so* gelöschtg werden? Freetz-davfs2 hat seine Libs doch in /usr/lib/freetz?

comment:26 Geändert vor 8 Jahren durch cuma

Die /usr/share/ctlmgr/libctlwebdav.so könnte wohl auch noch aufgenommen werden

comment:27 Geändert vor 8 Jahren durch cuma

(In [5982]) remove-patch for avm's webdav:

  • is now selected in menuconfig by freetz-davfs2 (like it was previously in the removescript)
  • libctlwebdav.so added (refs #863)

comment:28 Geändert vor 8 Jahren durch oliver

  • Beschreibung geändert (Diff)

comment:29 Geändert vor 8 Jahren durch cuma

(In [6004]) davfs2 (refs #863)

  • abort start if user configured https share, but SSL was not enabled on build

comment:30 Geändert vor 8 Jahren durch oliver

Kann hier zu? Ich denke das Problem mit den Umlauten ist nicht ohne weiteres lösbar. Die Anfrage bei Sourceforge verlief damals mangels Feedback leider im Sand.

comment:31 Geändert vor 8 Jahren durch oliver

  • Lösung auf fixed gesetzt
  • Status von new nach closed geändert
Hinweis: Hilfe zur Verwendung von Tickets finden Sie in TracTickets.