From: Jason A. Donenfeld Date: Sun, 11 Jun 2017 21:39:17 +0000 (+0200) Subject: wg-quick: make sure we have empty table for both v6 and v4 X-Git-Tag: v1.0.20191226~242 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1b5234f3d59f2bca0c2d49600979d856229ba781;p=thirdparty%2Fwireguard-tools.git wg-quick: make sure we have empty table for both v6 and v4 Otherwise, we wind up not doing the right thing in the v6-only case, or doing something totally borked when v4 and v6 are filled unevenly. Reported-by: Roelf Wichertjes Signed-off-by: Jason A. Donenfeld --- diff --git a/src/wg-quick.bash b/src/wg-quick.bash index a4f349a..75050fd 100755 --- a/src/wg-quick.bash +++ b/src/wg-quick.bash @@ -141,7 +141,9 @@ DEFAULT_TABLE= add_default() { if [[ -z $DEFAULT_TABLE ]]; then DEFAULT_TABLE=51820 - while [[ -n $(ip route show table $DEFAULT_TABLE) ]]; do ((DEFAULT_TABLE++)); done + while [[ -n $(ip -4 route show table $DEFAULT_TABLE) || -n $(ip -6 route show table $DEFAULT_TABLE) ]]; do + ((DEFAULT_TABLE++)) + done fi local proto=-4 src ip if [[ $1 == *:* ]]; then