From: Michael Tremer Date: Tue, 20 Oct 2015 15:39:26 +0000 (+0200) Subject: Merge branch 'master' of ssh://git.ipfire.org/pub/git/network X-Git-Tag: 008~25 X-Git-Url: http://git.ipfire.org/?p=people%2Fms%2Fnetwork.git;a=commitdiff_plain;h=ed2b1a75f64abb6916f6f9307b2d92852a988a0e;hp=54fbafe42c1fd3a2ebe61206cdd4aa909c8d48d4 Merge branch 'master' of ssh://git.ipfire.org/pub/git/network --- diff --git a/src/functions/functions.device b/src/functions/functions.device index a851b669..a79b81d5 100644 --- a/src/functions/functions.device +++ b/src/functions/functions.device @@ -313,6 +313,13 @@ device_is_serial() { serial_exists $@ } +# Returns true if a device is a tun device +device_is_tun() { + local device="${1}" + + [ -e "${SYS_CLASS_NET}/${device}/tun_flags" ] +} + # Check if the device is a physical network interface device_is_ethernet() { local device=${1} @@ -338,6 +345,9 @@ device_is_ethernet() { device_is_dummy ${device} && \ return ${EXIT_ERROR} + device_is_tun ${device} && \ + return ${EXIT_ERROR} + return ${EXIT_OK} } @@ -377,6 +387,9 @@ device_get_type() { elif device_is_dummy ${device}; then echo "dummy" + elif device_is_tun ${device}; then + echo "tun" + elif device_is_ethernet ${device}; then echo "ethernet" diff --git a/src/functions/functions.radvd b/src/functions/functions.radvd index a2daec35..4e41160e 100644 --- a/src/functions/functions.radvd +++ b/src/functions/functions.radvd @@ -35,9 +35,17 @@ radvd_update() { service_start radvd } -radvd_write_config() { +radvd_clear_config() { + log DEBUG "Clearing radv daemon configuration file" + config_header "radv daemon configuration file" > ${RADVD_CONFIGFILE} + return ${EXIT_OK} +} + +radvd_write_config() { + radvd_clear_config + # Write the configuration for all zones. local zone for zone in $(zones_get_local); do diff --git a/src/network-radvd-config b/src/network-radvd-config index fbf7e790..e9809e16 100644 --- a/src/network-radvd-config +++ b/src/network-radvd-config @@ -28,7 +28,7 @@ case "${1}" in ;; stop) # Clear all contents in the configuration file. - radvd_clear + radvd_clear_config ;; esac