Fix: revert save_clients to heredoc (pipe was unreliable), remove warp interface guard from apply_rules

Made-with: Cursor
This commit is contained in:
anten-ka
2026-03-20 18:24:02 +03:00
parent fe934267ac
commit 25665a1331

12
warp.sh
View File

@@ -847,10 +847,11 @@ awg_load_clients() {
awg_save_clients() {
local content=""
for ip in "${AWG_SELECTED_IPS[@]}"; do
content+="${ip}"$'\n'
content="${content}${ip}"$'\n'
done
docker exec "$CONTAINER" sh -c "mkdir -p '${AWG_WARP_DIR}'"
echo -n "$content" | docker exec -i "$CONTAINER" sh -c "cat > '${AWG_WARP_CLIENTS}'"
docker exec "$CONTAINER" sh -c "mkdir -p '$AWG_WARP_DIR' && cat > '$AWG_WARP_CLIENTS' <<'CLEOF'
${content}CLEOF
"
}
awg_parse_clients_table() {
@@ -1039,10 +1040,7 @@ awg_cleanup_rules() {
awg_apply_rules() {
awg_cleanup_rules
[ ${#AWG_SELECTED_IPS[@]} -eq 0 ] && return 0
if ! docker exec "$CONTAINER" sh -c "ip link show warp >/dev/null 2>&1"; then
return 0
fi
docker exec "$CONTAINER" sh -c "ip route add default dev warp table 100 2>/dev/null || ip route replace default dev warp table 100"
docker exec "$CONTAINER" sh -c "ip route add default dev warp table 100 2>/dev/null || ip route replace default dev warp table 100 2>/dev/null || true"
local prio=100
for ip in "${AWG_SELECTED_IPS[@]}"; do
docker exec "$CONTAINER" sh -c "