CKM: Check backend info
[platform/core/test/security-tests.git] / src / ckm / ckm-common.h
index 4d398e5..07cf3cc 100644 (file)
@@ -145,9 +145,28 @@ void reset_user_data(uid_t user_id, const char *passwd);
 
 ckmc_raw_buffer_s prepare_message_buffer(const char * input);
 void check_alias_list(const CKM::AliasVector& expected);
-void check_alias_info_list_helper(const CKM::AliasPwdVector& expected, const CKM::AliasPwdVector& actual,
+
+struct Info {
+    Info(const CKM::Alias &alias,
+         bool passwordProtected,
+         CKM::BackendId backend = CKM::BackendId::SW) :
+        alias(alias),
+        passwordProtected(passwordProtected),
+        backend(backend) {}
+
+    CKM::Alias alias;
+    bool passwordProtected;
+    CKM::BackendId backend;
+};
+typedef std::vector<Info> InfoVector;
+typedef std::unordered_map<std::string, Info> InfoMap;
+
+CKM::BackendId backend();
+
+void check_alias_info_list_helper(const InfoVector& expected,
+                                  const InfoMap& actual,
                                   const std::string &userSmackLabel = {});
-void check_alias_info_list(const CKM::AliasPwdVector& expected);
+void check_alias_info_list(const InfoVector& expected);
 
 typedef enum {
     ALIAS_KEY,
@@ -194,6 +213,7 @@ public:
 
 typedef std::shared_ptr<ckmc_raw_buffer_s> RawBufferPtr;
 typedef std::shared_ptr<struct __ckmc_param_list> ParamListPtr;
+typedef std::shared_ptr<struct __ckmc_cipher_ctx> CipherCtxPtr;
 
 ParamListPtr createParamListPtr();
 void setParam(ParamListPtr& params, ckmc_param_name_e name, ckmc_raw_buffer_s* buffer);
@@ -203,6 +223,8 @@ void assert_buffers_equal(const ckmc_raw_buffer_s* b1, const ckmc_raw_buffer_s*
 
 RawBufferPtr create_raw_buffer(ckmc_raw_buffer_s* buffer);
 
+CipherCtxPtr create_cipher_ctx(ckmc_cipher_ctx_h ctx);
+
 
 template <typename F, typename... Args>
 void test_no_observer(F&& func, Args... args)