Index: components/os_crypt/key_storage_util_linux.h |
diff --git a/components/os_crypt/key_storage_util_linux.h b/components/os_crypt/key_storage_util_linux.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..1bc741dbc81da0ead295a2abcc8e29d00cc0e799 |
--- /dev/null |
+++ b/components/os_crypt/key_storage_util_linux.h |
@@ -0,0 +1,31 @@ |
+// Copyright 2016 The Chromium Authors. All rights reserved. |
Lei Zhang
2016/08/17 14:36:25
Probably good to put the bits in this file inside
cfroussios
2016/08/17 15:04:33
Done.
|
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef COMPONENTS_OS_CRYPT_KEY_STORAGE_UTIL_LINUX_H_ |
+#define COMPONENTS_OS_CRYPT_KEY_STORAGE_UTIL_LINUX_H_ |
+ |
+#include <string> |
+ |
+#include "base/nix/xdg_util.h" |
+ |
+// The supported Linux backends for storing passwords. |
+enum class SelectedLinuxBackend { |
+ DEFER, // No selection |
+ BASIC_TEXT, |
+ GNOME_ANY, // GNOME_KEYRING or GNOME_LIBSECRET, whichever is available. |
+ GNOME_KEYRING, |
+ GNOME_LIBSECRET, |
+ KWALLET, |
+ KWALLET5, |
+}; |
+ |
+// Decide which backend to target. |command| is checked first. If it does not |
Lei Zhang
2016/08/17 14:36:25
Maybe s/command/type/ ?
cfroussios
2016/08/17 15:04:33
Done.
|
+// match a supported backend, |desktop_env| will be used to decide. |
+// TODO(crbug/571003): This is exposed as a utility only for password manager to |
+// use. It should be merged in key_storage_linux, once no longer needed in |
+// password manager. |
+SelectedLinuxBackend SelectBackend(const std::string& command, |
+ base::nix::DesktopEnvironment desktop_env); |
+ |
+#endif // COMPONENTS_OS_CRYPT_KEY_STORAGE_UTIL_LINUX_H_ |