wireguard-tools/src/wg-quick
Daniel Gröber e6888dd74e wg-quick: run PreUp hook after creating interface
Currently PreUp hooks run before the interface is created. This is
problematic for moving the device into a Linux VRFs as this will
currently clear all assigned IPv6 addressess (possibly a bug), so if we
did this in PostUp (i.e. before add_addr) we'll have to manually re-add
all assigned addresses. This is obviously less than ideal.

Instead create the wg device just before running PreUp hooks. We apply
this to all platforms for consistency.

Test case:

    $ ip link add vrf-test type vrf table 1234
    $ ip link add wg-test type wireguard
    $ ip addr add dev wg-test 192.168.42.42/24
    $ ip addr add dev wg-test fe80::/64

    $ ip -br addr show wg-test
    wg-test          DOWN           192.168.42.42/24 fe80::/64

    $ ip link set dev wg-test master vrf-test

    $ ip -br addr show wg-test
    wg-test          DOWN           192.168.42.42/32

Signed-off-by: Daniel Gröber <dxld@darkboxed.org>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-18 16:38:34 +02:00
..
android.c wg-quick: android: use right regex for host-vs-IP 2022-05-10 12:40:49 +02:00
darwin.bash wg-quick: run PreUp hook after creating interface 2023-05-18 16:38:34 +02:00
freebsd.bash wg-quick: run PreUp hook after creating interface 2023-05-18 16:38:34 +02:00
linux.bash wg-quick: run PreUp hook after creating interface 2023-05-18 16:38:34 +02:00
openbsd.bash wg-quick: run PreUp hook after creating interface 2023-05-18 16:38:34 +02:00
wg wg-quick: add wg symlink 2018-05-14 19:23:17 +02:00