#!/usr/bin/sh
# nvpmodel helper for MithraUI. Only IDs/names present in nvpmodel.conf
# are accepted.
set -eu

kind="$1"
val="$2"
conf=/etc/nvpmodel.conf

case "$kind" in
    profile)
        case "$val" in ''|*[!0-9]*) exit 2 ;; esac
        grep -q "^<\s*POWER_MODEL\s\+ID=$val\s" "$conf" || exit 3
        exec nvpmodel -m "$val"
        ;;
    fan)
        case "$val" in ''|*[!A-Za-z0-9_]*) exit 2 ;; esac
        grep -q "^<\s*FAN_MODEL\s\+ID=[0-9]\+\s\+NAME=$val\s" "$conf" || exit 3
        exec nvpmodel -d "$val"
        ;;
    *)
        exit 2
        ;;
esac
