]> granicus.if.org Git - icinga2/commitdiff
Fix incorrect hash size for User objects
authorGunnar Beutner <gunnar.beutner@netways.de>
Thu, 25 Aug 2016 05:37:41 +0000 (07:37 +0200)
committerGunnar Beutner <gunnar.beutner@netways.de>
Thu, 25 Aug 2016 06:04:12 +0000 (08:04 +0200)
fixes #12533

lib/db_ido/dbconnection.cpp
lib/db_ido/userdbobject.cpp

index 329c93bac9e3942dfabb94c9996807d244d1122c..93031c11efa664c33ff0d02c3becd6a8846366cf 100644 (file)
@@ -445,6 +445,7 @@ void DbConnection::UpdateObject(const ConfigObject::Ptr& object)
 
                        Dictionary::Ptr configFields = dbobj->GetConfigFields();
                        String configHash = dbobj->CalculateConfigHash(configFields);
+                       ASSERT(configHash.GetLength() <= 64);
                        configFields->Set("config_hash", configHash);
 
                        String cachedHash = GetConfigHash(dbobj);
index c50a78e7154c47e316898ef8460436824b3d076b..57adc53a18a7342e46019da12b458c0d25f0c3de 100644 (file)
@@ -175,5 +175,5 @@ String UserDbObject::CalculateConfigHash(const Dictionary::Ptr& configFields) co
        if (groups)
                hashData += DbObject::HashValue(groups);
 
-       return hashData;
+       return SHA256(hashData);
 }