alfred: update to version 2023.3
[feed/routing.git] / alfred / files / alfred.init
index 0c35e65ca5205aea52f9e01d68a020676a3ffa4f..f191827fd0af2977a9b9cbd2fa7ce0c8ead4f9e5 100755 (executable)
@@ -13,51 +13,9 @@ facters_dir="/etc/alfred"
 enable=0
 vis_enable=0
 
-wait_for_dir() {
-       local ifce="$1" dir="$2"
-
-       if ! [ -d "$dir" ] ; then
-               timeout=30
-               echo "waiting $timeout secs for $ifce interface..."
-               for i in $(seq $timeout); do
-                       sleep 1
-                       [ -d "$dir" ] && break
-                       if [ $i = $timeout ] ; then
-                               echo "$ifce not detected, alfred not starting."
-                               exit 1
-                       fi
-               done
-       fi
-}
-
-wait_for_ll_address() {
-       local iface="$1"
-       local timeout=30
-
-       echo "waiting $timeout secs for $iface address..."
-       for i in $(seq $timeout); do
-               # We look for
-               # - the link-local address (starts with fe80)
-               # - without tentative flag (bit 0x40 in the flags field; the first char of the fifth field is evaluated)
-               # - on interface $iface
-               if awk '
-                       BEGIN { RET=1 }
-                       $1 ~ /^fe80/ && $5 ~ /^[012389ab]/ && $6 == "'"$iface"'" { RET=0 }
-                       END { exit RET }
-               ' /proc/net/if_inet6; then
-                       return
-               fi
-               sleep 1
-       done
-
-       echo "$iface address not detected, alfred not starting."
-       exit 1
-}
-
 append_interface()
 {
        append "interfaces" "$1" ","
-       wait_for_ll_address "$1"
 }
 
 alfred_start() {
@@ -70,7 +28,7 @@ alfred_start() {
        config_get_bool disabled "$section" disabled 0
        [ $disabled = 0 ] || return 1
 
-       args=""
+       args="-f"
 
        config_list_foreach "$section" "interface" append_interface
        if [ -z "$interfaces" ]; then
@@ -85,10 +43,6 @@ alfred_start() {
        config_get batmanif "$section" batmanif
        append args "-b $batmanif"
 
-       if [ "$batmanif" != "none" ]; then
-               wait_for_dir "$batmanif" "/sys/devices/virtual/net/$batmanif"
-       fi
-
        append alfred_args "$args"
        enable=1
 
@@ -107,7 +61,7 @@ start_service() {
        config_load "alfred"
        config_foreach alfred_start alfred
 
-       [ "$enable" = "0" ] && exit 0
+       [ "$enable" = "0" ] && return 0
 
        procd_open_instance "alfred"
        procd_set_param command /usr/sbin/alfred