Versuche, das doch selbst zu machen
sooo komplex sollte das nicht sein!
- Lege eine zusätzliche Datei unter "Einstellungen" an, in die das Zert kommt (analog z.B. zum Openvpn). Dazu im "default" Ordner eine Datei anlegen, ähnlich wie "make/openvpn/files/root/etc/default.openvpn/box_crt.def", also z.B. make/davfs2/files/root/etc/default.davfs2/davfs_servercrt.def:
Code:
# etc/default.davfs2/davfs_servercrt.def
CAPTION='WebDav SSL Server Cert'
DESCRIPTION='Certificate for server.'
CONFIG_FILE='/tmp/flash/davfs_servercrt.pem'
CONFIG_SAVE='modsave flash; if [ ! -z "$(pidof mount.davfs)" ]; then echo ""; /mod/etc/init.d/rc.davfs2 reload; fi'
CONFIG_TYPE='text'
Dann musst du die rc-Datei unter make/davfs2/files/root/etc/init.d/rc.davfs2 entsprechend ergänzen:
Code:
case "$1" in
""|load)
if type modreg > /dev/null; then
modreg cgi davfs2 'WebDAV'
deffile='/mod/etc/default.davfs2/davfs_servercrt.def
[ -r "/tmp/flash/davfs_servercrt.def" ] && deffile='/tmp/flash/davfs_servercrt.def'
modreg file 'davfs_servercrt' 'WebDav Server Cert' 0 "$deffile"
adduser -D davfs2 2>/dev/null
addgroup davfs2 davfs2 2>/dev/null
fi
if [ "$WEBDAV_ENABLED" != "yes" ]; then
echo "WebDAV is disabled" 1>&2
exit 1;
fi
if [ ! -z "$(pidof mount.davfs)" ]; then
echo "WebDAV already started."
else
start
fi
;;
unload)
stop
modunreg cgi davfs2
modunreg file 'davfs_servercrt'
delgroup davfs2
deluser davfs2
;;
Dann liegt die Datei unter /tmp/flash/davfs_servercrt.pem und das muss dann in die Config rein.
Wenn ich das richtig gelesen habe, wird die Datei "/mod/etc/webdav" ebenfalls im "rc.davfs2" angelegt, nämlich hier in start(), wo die Ausgabe von "default.davfs2/webdav_mount" in dieses Datei umgeleitet wird:
Code:
start() {
mkdir /var/davfs2 2>/dev/null
(
if [ -x "/tmp/flash/webdav_secrets" ]; then
/tmp/flash/webdav_secrets
else
/mod/etc/default.davfs2/webdav_secrets
fi
) > /var/davfs2/secrets
(
if [ -x "/tmp/flash/webdav_mount" ]; then
/tmp/flash/webdav_mount
else
/mod/etc/default.davfs2/webdav_mount
fi
) > /mod/etc/webdav
(
if [ -x "/tmp/flash/webdav_umount" ]; then
/tmp/flash/webdav_umount
else
/mod/etc/default.davfs2/webdav_umount
fi
) > /mod/etc/webdav_umount
echo -n 'mount WebDAV...'
chmod +x $DAEMON
chmod +x $DAEMON_UMOUNT
$DAEMON > /dev/null 2>&1
exitval=$?
if [ "$exitval" -eq 0 ]; then
echo 'done.'
else
echo 'failed.'
exit $exitval
fi
}
Also fügst du deine Ergänzung in "default.davfs2/webdav_mount" hinzu, oder machst das "platt" direkt in der Datei...
Ich weiß natürlich nicht, ob das auch funktioniert, wenn du den Parameter angibst, aber garkein Zertifikat nutzt. Schöner wäre es, das noch steuerbar zu machen, dazu benötigst du dann eine zusätzliche Variable, die in der GUI zu setzen wäre. Dazu muss ein neuer Parameter in die default .cfg-Datei und die Variable des gleichen Namens in der GUI vorhanden sein....
Da ich das nicht nutze, kann ich es nicht testen, aber vielleicht helfen dir die Hinweise, und du baust deine erste eigene Ergänzung zu freetz 
Jörg
EDIT: Versuche doch mal den anhängenden Patch. Hilft der dir? (habe ihn nicht getestet)...