mirror of
https://github.com/juewuy/ShellCrash.git
synced 2026-03-12 16:31:25 +00:00
refactor(set_ipv6): replace recursion with while loop
This commit is contained in:
@@ -489,36 +489,42 @@ set_firewall_vm(){
|
|||||||
setconfig vm_redir $vm_redir
|
setconfig vm_redir $vm_redir
|
||||||
setconfig vm_ipv4 "'$vm_ipv4'"
|
setconfig vm_ipv4 "'$vm_ipv4'"
|
||||||
}
|
}
|
||||||
set_ipv6() { #ipv6设置
|
|
||||||
[ -z "$ipv6_redir" ] && ipv6_redir=OFF
|
# ipv6设置
|
||||||
[ -z "$ipv6_dns" ] && ipv6_dns=ON
|
set_ipv6() {
|
||||||
echo "-----------------------------------------------"
|
while true; do
|
||||||
echo -e " 1 ipv6透明路由: \033[36m$ipv6_redir\033[0m ——劫持ipv6流量"
|
[ -z "$ipv6_redir" ] && ipv6_redir=OFF
|
||||||
[ "$disoverride" != "1" ] && echo -e " 2 ipv6-DNS解析: \033[36m$ipv6_dns\033[0m ——决定内置DNS是否返回ipv6地址"
|
[ -z "$ipv6_dns" ] && ipv6_dns=ON
|
||||||
echo -e " 0 返回上级菜单"
|
echo "-----------------------------------------------"
|
||||||
echo "-----------------------------------------------"
|
echo -e " 1 ipv6透明路由: \033[36m$ipv6_redir\033[0m ——劫持ipv6流量"
|
||||||
read -p "请输入对应数字 > " num
|
[ "$disoverride" != "1" ] && echo -e " 2 ipv6-DNS解析: \033[36m$ipv6_dns\033[0m ——决定内置DNS是否返回ipv6地址"
|
||||||
case "$num" in
|
echo -e " 0 返回上级菜单"
|
||||||
0) ;;
|
echo "-----------------------------------------------"
|
||||||
1)
|
read -p "请输入对应数字 > " num
|
||||||
if [ "$ipv6_redir" = "OFF" ]; then
|
case "$num" in
|
||||||
ipv6_support=ON
|
"" | 0)
|
||||||
ipv6_redir=ON
|
break
|
||||||
sleep 2
|
;;
|
||||||
else
|
1)
|
||||||
ipv6_redir=OFF
|
if [ "$ipv6_redir" = "OFF" ]; then
|
||||||
fi
|
ipv6_support=ON
|
||||||
setconfig ipv6_redir $ipv6_redir
|
ipv6_redir=ON
|
||||||
setconfig ipv6_support $ipv6_support
|
sleep 2
|
||||||
set_ipv6
|
else
|
||||||
;;
|
ipv6_redir=OFF
|
||||||
2)
|
fi
|
||||||
[ "$ipv6_dns" = "OFF" ] && ipv6_dns=ON || ipv6_dns=OFF
|
setconfig ipv6_redir $ipv6_redir
|
||||||
setconfig ipv6_dns $ipv6_dns
|
setconfig ipv6_support $ipv6_support
|
||||||
set_ipv6
|
;;
|
||||||
;;
|
2)
|
||||||
*)
|
[ "$ipv6_dns" = "OFF" ] && ipv6_dns=ON || ipv6_dns=OFF
|
||||||
errornum
|
setconfig ipv6_dns $ipv6_dns
|
||||||
;;
|
;;
|
||||||
esac
|
*)
|
||||||
|
errornum
|
||||||
|
sleep 1
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user