diff options
Diffstat (limited to 'src/utils')
-rw-r--r-- | src/utils/cpp/TARGETS | 7 | ||||
-rw-r--r-- | src/utils/cpp/verify_hash.hpp | 37 |
2 files changed, 0 insertions, 44 deletions
diff --git a/src/utils/cpp/TARGETS b/src/utils/cpp/TARGETS index fda8f473..5f0eab47 100644 --- a/src/utils/cpp/TARGETS +++ b/src/utils/cpp/TARGETS @@ -99,13 +99,6 @@ , "hdrs": ["path_hash.hpp"] , "stage": ["src", "utils", "cpp"] } -, "verify_hash": - { "type": ["@", "rules", "CC", "library"] - , "name": ["verify_hash"] - , "hdrs": ["verify_hash.hpp"] - , "deps": [["@", "fmt", "", "fmt"]] - , "stage": ["src", "utils", "cpp"] - } , "transformed_range": { "type": ["@", "rules", "CC", "library"] , "name": ["transformed_range"] diff --git a/src/utils/cpp/verify_hash.hpp b/src/utils/cpp/verify_hash.hpp deleted file mode 100644 index f105eb2b..00000000 --- a/src/utils/cpp/verify_hash.hpp +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2023 Huawei Cloud Computing Technology Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef INCLUDED_SRC_UTILS_CPP_VERIFY_HASH_HPP -#define INCLUDED_SRC_UTILS_CPP_VERIFY_HASH_HPP -#include <algorithm> -#include <cctype> -#include <optional> -#include <string> - -#include "fmt/core.h" - -/// \brief Check if the passed string \p s is a hash. -/// This function is mainly used to check that the hash of a Digest received -/// over the wire is a real hash, to prevent a malicious attack. -/// \returns Nullopt on success, error message on failure. -[[nodiscard]] static inline auto IsAHash(std::string const& s) noexcept - -> std::optional<std::string> { - if (not std::all_of(s.begin(), s.end(), [](unsigned char c) { - return std::isxdigit(c); - })) { - return fmt::format("Invalid hash {}", s); - } - return std::nullopt; -} -#endif |