File: //volume1/@appstore/MailPlus-Server/hook/MailPlusServerAppPrivRuleSet.sh
#!/bin/bash
if [ ! -e "/var/packages/MailPlus-Server/target/" ]; then
exit 0
fi
. /var/packages/MailPlus-Server/target/scripts/DsmVersionUtil.sh
MAIL_SERVER_PKG="/var/packages/MailPlus-Server"
MAIL_SERVER_BACKEND="${MAIL_SERVER_PKG}/target/bin/syno_mailserver_backend"
CALLBACK_BINARY="${MAIL_SERVER_PKG}/target/bin/syno_action"
CheckNeedRefresh() {
local rule_idx=1
local rule_cnt=$((NITEM+1))
while [ "${rule_idx}" != "${rule_cnt}" ]
do
eval "APP_NAME=\$APP_$rule_idx"
if [ "${APP_NAME}" == "SYNO.SDS.MailPlusServer.Instance" ]; then
NEED_REFRESH=1
break
fi
rule_idx=$((rule_idx + 1))
done
}
case $1 in
--sdk-mod-ver)
#Print SDK support version
echo "1.0";
;;
--name)
#Print package name
echo "MailPlus-Server";
;;
--pkg-ver)
#Print package version
echo "1.0";
;;
--vendor)
#Print package vendor
echo "Synology";
;;
--pre)
;;
--post)
if [ "0" != "${RESULT}" ]; then
return
fi
if isPackageStarted && ${MAIL_SERVER_BACKEND} --isClusterInit; then
NEED_REFRESH=0
CheckNeedRefresh
if [ ${NEED_REFRESH} == "1" ]; then
${MAIL_SERVER_BACKEND} --refreshUserValidityCache
${CALLBACK_BINARY} valid_user_list ""
fi
fi
;;
*)
echo "Usage: $0 --sdk-mod-ver|--name|--pkg-ver|--vendor|--pre|--post"
;;
esac