#!/bin/sh /etc/rc.common
# Wisp - 透明代理插件服务

START=99
STOP=10
USE_PROCD=1

PROG="/usr/bin/voip8-proxy"
CONF="/etc/voip8-proxy/config.json"

start_service() {
    procd_open_instance
    procd_set_param command "$PROG" -config "$CONF"
    procd_set_param respawn 3600 5 5
    procd_set_param stdout 1
    procd_set_param stderr 1
    procd_close_instance
}

stop_service() {
    nft delete table ip voip8proxy 2>/dev/null
    nft delete table ip6 voip8proxy6 2>/dev/null
    ip rule del fwmark 1 table 100 2>/dev/null
    ip route del local 0.0.0.0/0 dev lo table 100 2>/dev/null
    ip -6 rule del fwmark 1 table 106 2>/dev/null
    ip -6 route del local ::/0 dev lo table 106 2>/dev/null
    killall voip8-proxy 2>/dev/null
    killall xray 2>/dev/null
    killall mihomo 2>/dev/null
}

service_triggers() {
    procd_add_reload_trigger "voip8-proxy" "firewall" "network"
}
