HEX
Server: Apache/2.4.63 (Unix)
System: Linux TOMS-220NAS 4.4.302+ #86009 SMP Wed Nov 26 18:19:17 CST 2025 x86_64
User: flavio87 (1026)
PHP: 8.3.27
Disabled: NONE
Upload Files
File: //volume1/@appstore/CMS/scripts/feasibility/check_policy.sh
#!/bin/bash
JQ=/bin/jq
LOGGER=/usr/bin/logger
SQLITE=/bin/sqlite3
SYNOCMSUTILS=/var/packages/CMS/target/tools/synocmsutils
ENABLED_FILE="/var/packages/CMS/enabled"

SHARE_NAME="$1"
ACTION="$2"

get_spk_paths()
{
	local spk_paths
	local ret

	spk_paths=$(echo "SELECT setting FROM policy WHERE parent_type IS NOT NULL;" | \
		"$SQLITE" /var/packages/CMS/var/db/cms_db.sqlite | \
		"$JQ" --raw-output '(.gpo_content.Packages_Install)? | .packages_install[].path')
	ret="$?"

	echo -n "$spk_paths"

	return "$ret"
}

main()
{
	if [ ! -f "${ENABLED_FILE}" ]; then
		exit 0
	fi

	local spk_paths
	local spk_share_name

	if ! spk_paths="$(get_spk_paths)"; then
		"$LOGGER" -p err "CMS_share_transform_check_policy.sh: Failed to get spk path"
		exit 0
	fi

	while IFS= read -r path; do
		if ! spk_share_name="$("$SYNOCMSUTILS" --get-share-name "$path")"; then
			continue
		fi

		if [ "$SHARE_NAME" == "$spk_share_name" ]; then
			exit 1
		fi
	done <<< "$spk_paths"

	exit 0
}

main