Merge pull request #1137 from sofia-riese/patch-1

refactor(set_wireguard): replace recursion with while loop and fix some bug
This commit is contained in:
juewuy
2026-01-17 13:00:39 +08:00
committed by GitHub

View File

@@ -546,9 +546,26 @@ set_tailscale() {
}
set_wireguard() {
[ -n "$wg_public_key" ] && wgp_key_info='*********' || unset wgp_key_info
[ -n "$wg_private_key" ] && wgv_key_info='*********' || unset wgv_key_info
[ -n "$wg_pre_shared_key" ] && wgpsk_key_info='*********' || unset wgpsk_key_info
while true; do
if [ -n "$wg_public_key" ]; then
wgp_key_info='*********'
else
unset wgp_key_info
fi
if [ -n "$wg_private_key" ]; then
wgv_key_info='*********'
else
unset wgv_key_info
fi
if [ -n "$wg_pre_shared_key" ]; then
wgpsk_key_info='*********'
else
unset wgpsk_key_info
fi
echo "-----------------------------------------------"
echo -e "\033[31m注意\033[0m脚本默认内核为了节约内存没有编译WireGuard模块\n如需使用请先前往自定义内核更新完整版内核文件"
echo "-----------------------------------------------"
@@ -566,7 +583,9 @@ set_wireguard(){
echo "-----------------------------------------------"
read -p "请输入对应数字 > " num
case "$num" in
0) ;;
"" | 0)
break
;;
1)
if [ -n "$wg_server" ] && [ -n "$wg_port" ] && [ -n "$wg_public_key" ] && [ -n "$wg_pre_shared_key" ] && [ -n "$wg_private_key" ] && [ -n "$wg_ipv4" ]; then
[ "$wg_service" = ON ] && wg_service=OFF || wg_service=ON
@@ -575,7 +594,6 @@ set_wireguard(){
echo -e "\033[31m请先完成必选设置\033[0m"
sleep 1
fi
set_wireguard
;;
[1-8])
read -p "请输入相应内容(回车或0删除) > " text
@@ -609,11 +627,12 @@ set_wireguard(){
wg_ipv6="$text"
setconfig wg_ipv6 "$text" "$GT_CFG_PATH"
;;
esac
set_wireguard
;;
*) errornum ;;
*)
errornum
sleep 1
;;
esac
done
}