File: /volume1/@appstore/WebDAVServer/scripts/synowebdavserver_create_cfg.sh
#!/bin/sh
PATH_PREFIX="/var/packages/WebDAVServer/target"
SERVICE_CONF="$PATH_PREFIX/etc/webdav.cfg"
BIN_GET_KEY_VALUE="/usr/syno/bin/synogetkeyvalue"
BIN_SET_KEY_VALUE="/usr/syno/bin/synosetkeyvalue"
BIN_SYNO_SERVICE="/usr/syno/sbin/synoservice"
SYNOINFO_PATH="/etc/synoinfo.conf"
HTTP_RUNKEY_PATH="/usr/syno/etc/synoservice.override/webdav-httpd-pure.cfg"
HTTPS_RUNKEY_PATH="/usr/syno/etc/synoservice.override/webdav-httpd-ssl.cfg"
if [ -f $HTTP_RUNKEY_PATH -a -n "`cat $HTTP_RUNKEY_PATH | grep yes`" ]; then
ENABLE_HTTP="yes"
else
ENABLE_HTTP="no"
fi
if [ -f $HTTPS_RUNKEY_PATH -a -n "`cat $HTTPS_RUNKEY_PATH | grep yes`" ]; then
ENABLE_HTTPS="yes"
else
ENABLE_HTTPS="no"
fi
HTTP_PORT=`$BIN_GET_KEY_VALUE $SYNOINFO_PATH WebDavPort`
if [ "$HTTP_PORT" == "" ]; then
HTTP_PORT="5005"
fi
HTTPS_PORT=`$BIN_GET_KEY_VALUE $SYNOINFO_PATH secure_WebDavPort`
if [ "$HTTPS_PORT" == "" ]; then
HTTPS_PORT="5006"
fi
ENABLE_ANONYMOUS=`$BIN_GET_KEY_VALUE $SYNOINFO_PATH webdavanonymouslogin`
if [ "$ENABLE_ANONYMOUS" != "yes" ]; then
ENABLE_ANONYMOUS="no"
fi
ENABLE_DEPTH_INFINITY=`$BIN_GET_KEY_VALUE $SYNOINFO_PATH webdavdepthinfinity`
if [ "$ENABLE_DEPTH_INFINITY" != "yes" ]; then
ENABLE_DEPTH_INFINITY="no"
fi
ENABLE_CALDAV=`$BIN_GET_KEY_VALUE $SYNOINFO_PATH runCalDav`
if [ "$ENABLE_CALDAV" != "yes" ]; then
ENABLE_CALDAV="no"
fi
ENABLE_CUSTOMIZED_MAX_CONNECTIONS=`$BIN_GET_KEY_VALUE $SYNOINFO_PATH enable_customized_max_connections`
if [ "$ENABLE_CUSTOMIZED_MAX_CONNECTIONS" != "yes" ]; then
ENABLE_CUSTOMIZED_MAX_CONNECTIONS="no"
fi
MAX_CONNECTIONS=`$BIN_GET_KEY_VALUE $SYNOINFO_PATH max_connections`
if [ "$MAX_CONNECTIONS" == "" ]; then
MAX_CONNECTIONS="150"
fi
$BIN_SET_KEY_VALUE $SERVICE_CONF "enable_http" $ENABLE_HTTP
$BIN_SET_KEY_VALUE $SERVICE_CONF "enable_https" $ENABLE_HTTPS
$BIN_SET_KEY_VALUE $SERVICE_CONF "http_port" $HTTP_PORT
$BIN_SET_KEY_VALUE $SERVICE_CONF "https_port" $HTTPS_PORT
$BIN_SET_KEY_VALUE $SERVICE_CONF "enable_anonymous" $ENABLE_ANONYMOUS
$BIN_SET_KEY_VALUE $SERVICE_CONF "enable_depth_infinity" $ENABLE_DEPTH_INFINITY
$BIN_SET_KEY_VALUE $SERVICE_CONF "enable_caldav" $ENABLE_CALDAV
$BIN_SET_KEY_VALUE $SERVICE_CONF "enable_customized_max_connections" $ENABLE_CUSTOMIZED_MAX_CONNECTIONS
$BIN_SET_KEY_VALUE $SERVICE_CONF "max_connections" $MAX_CONNECTIONS