# shellcheck shell=dash

___x_cmd_mac_sshd(){
    [ $# -gt 0 ] ||     set -- status

    local op="$1";      shift

    case "$op" in
        restart|stop|start|status)
            ___x_cmd_mac_sshd_"$op"      "$@" ;;
        -h|--help)
            ___x_cmd help -m mac sshd    "$@" ;;
        *)  N=mac M="Unknown subcmd -> $op" log:ret:64        ;;
    esac
}

___x_cmd_mac_sshd_status(){
    ___x_cmd sudo launchctl list com.openssh.sshd
    # return 113 if not found
}

___x_cmd_mac_sshd_isalive(){
   ___x_cmd_mac_sshd_status >/dev/null
}


___x_cmd_mac_sshd_restart(){
    ! ___x_cmd_mac_sshd_isalive || ___x_cmd_mac_sshd_stop
    ___x_cmd_mac_sshd_start
}

___x_cmd_mac_sshd_stop(){
    # sudo launchctl stop com.openssh.sshd
    ___x_cmd sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
}

___x_cmd_mac_sshd_start(){
    ___x_cmd sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
}
