]> granicus.if.org Git - icinga2/commitdiff
Fix config validation for templates used as object reference name
authorMichael Friedrich <michael.friedrich@netways.de>
Thu, 17 Dec 2015 12:46:39 +0000 (13:46 +0100)
committerGunnar Beutner <gunnar@beutner.name>
Tue, 23 Feb 2016 08:16:22 +0000 (09:16 +0100)
fixes #10830

lib/config/configitem.cpp

index d3af15d3d1e6404e84c36441f852766d9137baae..a6c959e5899ad4d162ac5688ee8baa7dc2e5d08c 100644 (file)
@@ -144,7 +144,12 @@ class DefaultValidationUtils : public ValidationUtils
 public:
        virtual bool ValidateName(const String& type, const String& name) const override
        {
-               return ConfigItem::GetByTypeAndName(type, name) != ConfigItem::Ptr();
+               ConfigItem::Ptr item = ConfigItem::GetByTypeAndName(type, name);
+
+               if (!item || (item && item->IsAbstract()))
+                       return false;
+
+               return true;
        }
 };