Index: chromeos/cryptohome/cryptohome_parameters.h |
diff --git a/chromeos/cryptohome/cryptohome_parameters.h b/chromeos/cryptohome/cryptohome_parameters.h |
index d74d5fc1f085341bd28d6fc04b1931c66485d98a..fe43f2c21a8d05969c87c3d60db0348d512d6e55 100644 |
--- a/chromeos/cryptohome/cryptohome_parameters.h |
+++ b/chromeos/cryptohome/cryptohome_parameters.h |
@@ -9,6 +9,8 @@ |
#include <vector> |
#include "base/basictypes.h" |
+#include "base/memory/scoped_ptr.h" |
+#include "base/memory/scoped_vector.h" |
#include "chromeos/chromeos_export.h" |
namespace cryptohome { |
@@ -64,6 +66,38 @@ struct CHROMEOS_EXPORT Authorization { |
std::string label; |
}; |
+// Information about keys returned by GetKeyDataEx(). |
+struct CHROMEOS_EXPORT RetrievedKeyData { |
+ enum Type { |
+ TYPE_PASSWORD = 0 |
+ }; |
+ |
+ enum AuthorizationType { |
+ AUTHORIZATION_TYPE_HMACSHA256 = 0, |
+ AUTHORIZATION_TYPE_AES256CBC_HMACSHA256 |
+ }; |
+ |
+ struct ProviderData { |
+ explicit ProviderData(const std::string& name); |
+ ~ProviderData(); |
+ |
+ std::string name; |
+ scoped_ptr<int64> number; |
+ scoped_ptr<std::string> bytes; |
+ }; |
+ |
+ RetrievedKeyData(Type type, const std::string& label, int64 revision); |
+ ~RetrievedKeyData(); |
+ |
+ Type type; |
+ std::string label; |
+ // Privileges associated with key. Combination of |AuthKeyPrivileges| values. |
+ int privileges; |
+ int64 revision; |
+ std::vector<AuthorizationType> authorization_types; |
+ ScopedVector<ProviderData> provider_data; |
+}; |
+ |
// Parameters for Mount call. |
class CHROMEOS_EXPORT MountParameters { |
public: |