# shellcheck shell=dash

___x_cmd_mac_name(){
    [ $# -gt 0 ] || set -- get

    local op="$1";  shift
    case "$op" in
        get|set)        ___x_cmd_mac_name_"$op"   "$@" ;;
        -h|--help)      ___x_cmd help -m mac name "$@" ;;
        *)              N=mac M="Unknown subcmd -> $op" log:ret:64 ;;
    esac
}

___x_cmd_mac_name_get(){
    {
        printf "ComputerName : %s\n"    "$(scutil --get ComputerName)"
        printf "HostName : %s\n"        "$(scutil --get HostName)"
        printf "LocalHostName : %s\n"   "$(scutil --get LocalHostName)"
        printf "NetBIOSName : %s\n"     "$(defaults read /Library/Preferences/SystemConfiguration/com.apple.smb.server NetBIOSName)"
    } 2>/dev/null
}

___x_cmd_mac_name_set(){
    local name="$1"

    [ -z "$name" ] || {
        sudo scutil --set ComputerName "$name"      && \
        sudo scutil --set HostName      "$name"     && \
        sudo scutil --set LocalHostName "$name"     && \
        sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.smb.server NetBIOSName -string "$name"
    }
}

