Index: components/os_crypt/libsecret_util_posix.h |
diff --git a/components/os_crypt/libsecret_util_posix.h b/components/os_crypt/libsecret_util_posix.h |
deleted file mode 100644 |
index 0d265be940fcd6115c847020564509309ca62ad5..0000000000000000000000000000000000000000 |
--- a/components/os_crypt/libsecret_util_posix.h |
+++ /dev/null |
@@ -1,83 +0,0 @@ |
-// Copyright 2016 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#ifndef COMPONENTS_OS_CRYPT_LIBSECRET_UTIL_POSIX_H_ |
-#define COMPONENTS_OS_CRYPT_LIBSECRET_UTIL_POSIX_H_ |
- |
-#include <libsecret/secret.h> |
- |
-#include <list> |
-#include <string> |
- |
-#include "base/macros.h" |
- |
-// Utility for dynamically loading libsecret. |
-class LibsecretLoader { |
- public: |
- static decltype(&::secret_password_store_sync) secret_password_store_sync; |
- static decltype(&::secret_service_search_sync) secret_service_search_sync; |
- static decltype(&::secret_password_clear_sync) secret_password_clear_sync; |
- static decltype(&::secret_item_get_secret) secret_item_get_secret; |
- static decltype(&::secret_value_get_text) secret_value_get_text; |
- static decltype(&::secret_item_get_attributes) secret_item_get_attributes; |
- static decltype(&::secret_item_load_secret_sync) secret_item_load_secret_sync; |
- static decltype(&::secret_value_unref) secret_value_unref; |
- |
- // Loads the libsecret library and checks that it responds to queries. |
- // Returns false if either step fails. |
- // Repeated calls check the responsiveness every time, but do not load the |
- // the library again if already successful. |
- static bool EnsureLibsecretLoaded(); |
- |
- protected: |
- static bool libsecret_loaded_; |
- |
- private: |
- struct FunctionInfo { |
- const char* name; |
- void** pointer; |
- }; |
- |
- static const FunctionInfo kFunctions[]; |
- |
- // Load the libsecret binaries. Returns true on success. |
- // If successful, the result is cached and the function can be safely called |
- // multiple times. |
- // Checking |LibsecretIsAvailable| is necessary after this to verify that the |
- // service responds to queries. |
- static bool LoadLibsecret(); |
- |
- // True if the libsecret binaries have been loaded and the library responds |
- // to queries. |
- static bool LibsecretIsAvailable(); |
- |
- DISALLOW_IMPLICIT_CONSTRUCTORS(LibsecretLoader); |
-}; |
- |
-class LibsecretAttributesBuilder { |
- public: |
- LibsecretAttributesBuilder(); |
- ~LibsecretAttributesBuilder(); |
- |
- void Append(const std::string& name, const std::string& value); |
- |
- void Append(const std::string& name, int64_t value); |
- |
- // GHashTable, its keys and values returned from Get() are destroyed in |
- // |LibsecretAttributesBuilder| destructor. |
- GHashTable* Get() { return attrs_; } |
- |
- private: |
- // |name_values_| is a storage for strings referenced in |attrs_|. |
- // TODO(crbug.com/607950): Make implementation more robust by not depending on |
- // the implementation details of containers. External objects keep references |
- // to the objects stored in this container. Using a vector here will fail the |
- // ASan tests, because it may move the objects and break the references. |
- std::list<std::string> name_values_; |
- GHashTable* attrs_; |
- |
- DISALLOW_COPY_AND_ASSIGN(LibsecretAttributesBuilder); |
-}; |
- |
-#endif // COMPONENTS_OS_CRYPT_LIBSECRET_UTIL_POSIX_H_ |