]> granicus.if.org Git - icinga2/commitdiff
Properly parse the Icinga version for minimum version in the 'icinga' check 7418/head
authorMichael Friedrich <michael.friedrich@icinga.com>
Wed, 14 Aug 2019 11:15:05 +0000 (13:15 +0200)
committerMichael Friedrich <michael.friedrich@icinga.com>
Wed, 14 Aug 2019 11:15:05 +0000 (13:15 +0200)
fixes #7415

lib/methods/icingachecktask.cpp

index e67d1ff94304be1929a35bce20805e70e26e792a..c2013707f967efa4dbe135b50222b17888692284 100644 (file)
@@ -172,11 +172,7 @@ void IcingaCheckTask::ScriptFunc(const Checkable::Ptr& checkable, const CheckRes
                }
        }
 
-       /* Extract the version number of the running Icinga2 instance.
-        * We assume that appVersion will allways be something like 'v2.10.1-8-gaebe6da' and we want to extract '2.10.1'.
-        */
-       int endOfVersionNumber = appVersion.FindFirstOf("-") - 1;
-       String parsedAppVersion = appVersion.SubStr(1, endOfVersionNumber);
+       String parsedAppVersion = Utility::ParseVersion(appVersion);
 
        /* Return an error if the version is less than specified (optional). */
        if (missingIcingaMinVersion.IsEmpty() && !icingaMinVersion.IsEmpty() && Utility::CompareVersion(icingaMinVersion, parsedAppVersion) < 0) {