olsrd: init-script: fix new plugin-lazymode
authorBastian Bittorf <bb@npl.de>
Mon, 13 Feb 2017 15:25:37 +0000 (16:25 +0100)
committerBastian Bittorf <bb@npl.de>
Mon, 13 Feb 2017 15:25:56 +0000 (16:25 +0100)
make sure that we do not select
'olsrd_dyn_gw_plain.so.0.4' if user wants
'olsrd_dyn_gw.so.0.5'

olsrd/files/olsrd.init

index b21d8ea469b48b2ddedf6483d3eaea05b9039963..bbb4e07307fc9d16025a7fcf6e65a3873e8ce58c 100644 (file)
@@ -472,13 +472,18 @@ olsrd_write_hna6() {
 
 find_most_recent_plugin_libary()
 {
-       local library="$1"
+       local library="$1"      # e.g. 'olsrd_dyn_gw' or 'olsrd_txtinfo.so.1.1'
        local file unixtime
 
        for file in "/lib/$library"* "/usr/lib/$library"* "/usr/local/lib/$library"*; do {
                [ -f "$file" ] && {
-                       unixtime="$( date +%s -r "$file" )"
-                       echo "$unixtime $file"
+                       # make sure that we do not select
+                       # 'olsrd_dyn_gw_plain.so.0.4' if user wants
+                       # 'olsrd_dyn_gw.so.0.5' -> compare part before 1st dot
+                       [ "${library%%.*}" = "${file%%.*}" ] && {
+                               unixtime="$( date +%s -r "$file" )"
+                               echo "$unixtime $file"
+                       }
                }
        } done | sort -n | tail -n1 | cut -d' ' -f2
 }