mirror of
https://github.com/triffid/pia-wg.git
synced 2026-03-31 06:23:55 -04:00
Fix conncache to only hold the selected server
This commit is contained in:
14
pia-wg.sh
14
pia-wg.sh
@@ -201,20 +201,22 @@ then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
jq -r ".regions | .[] | select(.id == \"$LOC\")" "$DATAFILE_NEW" > "$CONNCACHE"
|
||||
SERVERINFO="$(jq -r ".regions[] | select(.id == \"$LOC\")" "$DATAFILE_NEW")"
|
||||
|
||||
WG_NAME="$(jq -r ".name" "$CONNCACHE")"
|
||||
WG_DNS="$(jq -r ".dns" "$CONNCACHE")"
|
||||
WG_NAME="$(jq -r ".name" <<< "$SERVERINFO")"
|
||||
WG_DNS="$( jq -r ".dns" <<< "$SERVERINFO")"
|
||||
|
||||
SERVERINDEX="$(jq --arg r $RANDOM '($r|tonumber) % (.servers.wg | length)' "$CONNCACHE")"
|
||||
echo "Selecting server $(( $SERVERINDEX + 1 )) from $(jq '.servers.wg | length' "$CONNCACHE") choices"
|
||||
SERVERINDEX="$(jq --arg r $RANDOM '($r|tonumber) % (.servers.wg | length)' <<< "$SERVERINFO")"
|
||||
echo "Selecting server $(( $SERVERINDEX + 1 )) from $(jq '.servers.wg | length' <<< "$SERVERINFO") choices"
|
||||
|
||||
SELECTEDSERVER="$(jq --arg i $SERVERINDEX '.servers.wg[$i|tonumber]' "$CONNCACHE")"
|
||||
SELECTEDSERVER="$(jq --arg i $SERVERINDEX '.servers.wg[$i|tonumber]' <<< "$SERVERINFO")"
|
||||
|
||||
WG_HOST="$(jq -r ".ip" <<< "$SELECTEDSERVER")"
|
||||
WG_CN="$( jq -r ".cn" <<< "$SELECTEDSERVER")"
|
||||
WG_PORT="$(jq -r '.groups.wg[0].ports[]' "$DATAFILE_NEW" | shuf -n1)"
|
||||
|
||||
jq '. | del(.servers.wg) * { "servers": { "wg": [ { "ip": "'"$WG_HOST"'", "cn": "'"$WG_CN"'" } ] } }' <<< "$SERVERINFO" > "$CONNCACHE"
|
||||
|
||||
WG_SN="$(cut -d. -f1 <<< "$WG_DNS")"
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user