1
0
mirror of https://github.com/eworm-de/routeros-scripts.git synced 2024-05-11 05:55:19 +00:00

global-functions: add $VersionToNum

This commit is contained in:
Christian Hesse
2020-07-07 00:01:00 +02:00
parent e1b45f13f5
commit d8b2055fbc

View File

@ -41,6 +41,7 @@
:global SendTelegram;
:global TimeIsSync;
:global UrlEncode;
:global VersionToNum;
:global WaitDefaultRouteReachable;
:global WaitDNSResolving;
:global WaitForFile;
@ -760,6 +761,35 @@
:return $Return;
}
# convert version string to numeric value
:set VersionToNum do={
:local Input [ :tostr $1 ];
:local Multi 0x1000000;
:local Return 0;
:global CharacterReplace;
:set Input [ $CharacterReplace [ $CharacterReplace [ $CharacterReplace $Input \
"." "," ] "beta" ",beta," ] "rc" ",rc," ];
:foreach Value in=([ :toarray $Input ], 0) do={
:local Num [ :tonum $Value ];
:if ($Multi = 0x100) do={
:if ([ :typeof $Num ] = "num") do={
:set Return ($Return + 0xff00);
:set Multi ($Multi / 0x100);
} else={
:if ($Value = "beta") do={ :set Return ($Return + 0x3f00); }
:if ($Value = "rc") do={ :set Return ($Return + 0x7f00); }
}
}
:if ([ :typeof $Num ] = "num") do={ :set Return ($Return + ($Value * $Multi)); }
:set Multi ($Multi / 0x100);
}
:return $Return;
}
# wait for default route to be reachable
:set WaitDefaultRouteReachable do={
:global DefaultRouteIsReachable;