Line data Source code
1 : /** 2 : * Copyright (c) 2025 Huawei Technologies Co., Ltd. 3 : * This program is free software, you can redistribute it and/or modify it under the terms and conditions of 4 : * CANN Open Software License Agreement Version 2.0 (the "License"). 5 : * Please refer to the License for details. You may not use this file except in compliance with the License. 6 : * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED, 7 : * INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. 8 : * See LICENSE in the root of the software repository for the full text of the License. 9 : */ 10 : 11 : #include "hash_utils.h" 12 : #include <fstream> 13 : #include <sstream> 14 : #include "common/log_inner.h" 15 : 16 : namespace acl { 17 : namespace hash_utils { 18 41 : aclError CalculateSimpleHash(const char *filePath, const std::string &configString, std::string &hashResult) { 19 41 : ACL_LOG_INFO("Begin to calculate hash for file: %s", filePath); 20 : 21 41 : std::size_t hashValue = std::hash<std::string>{}(configString); 22 41 : hashResult = std::to_string(hashValue); 23 41 : ACL_LOG_INFO("End to calculate hash for file: %s, hash value: %s", filePath, hashResult.c_str()); 24 : 25 41 : return ACL_SUCCESS; 26 : } 27 : } // namespace hash_utils 28 : } // namespace acl