diff --git a/files/initrd/opt/arc/boot.sh b/files/initrd/opt/arc/boot.sh index 8b97ea5d..f3357a78 100755 --- a/files/initrd/opt/arc/boot.sh +++ b/files/initrd/opt/arc/boot.sh @@ -102,6 +102,13 @@ EMMCBOOT="$(readConfigKey "emmcboot" "${USER_CONFIG_FILE}")" MODBLACKLIST="$(readConfigKey "modblacklist" "${USER_CONFIG_FILE}")" ARCPATCH="$(readConfigKey "arc.patch" "${USER_CONFIG_FILE}")" +# HardwareID Check +if [ "${ARCPATCH}" = "true" ]; then + HARDWAREID=="$(readConfigKey "arc.hardwareid" "${USER_CONFIG_FILE}")" + HWIDSYS="$(genHWID)" + [ "${HARDWAREID}" != "${HWIDSYS}" ] && die "HardwareID does not match! - Loader can't boot to DSM." +fi + declare -A CMDLINE # Automated Cmdline diff --git a/files/initrd/opt/arc/init.sh b/files/initrd/opt/arc/init.sh index 694d5f8c..43fa35f3 100755 --- a/files/initrd/opt/arc/init.sh +++ b/files/initrd/opt/arc/init.sh @@ -38,6 +38,7 @@ initConfigKey "arc.confdone" "false" "${USER_CONFIG_FILE}" initConfigKey "arc.dynamic" "false" "${USER_CONFIG_FILE}" initConfigKey "arc.offline" "false" "${USER_CONFIG_FILE}" initConfigKey "arc.patch" "false" "${USER_CONFIG_FILE}" +initConfigKey "arc.hwardwareid" "" "${USER_CONFIG_FILE}" initConfigKey "arc.userid" "" "${USER_CONFIG_FILE}" initConfigKey "arc.version" "${ARC_VERSION}" "${USER_CONFIG_FILE}" initConfigKey "boot" "{}" "${USER_CONFIG_FILE}"