extern int utc_ckmc_param_list_free_n(void);
extern int utc_ckmc_generate_new_params_p(void);
extern int utc_ckmc_generate_new_params_n(void);
+extern int utc_ckmc_alias_info_get_alias_p(void);
+extern int utc_ckmc_alias_info_get_alias_n(void);
+extern int utc_ckmc_alias_info_is_password_protected_p(void);
+extern int utc_ckmc_alias_info_is_password_protected_n(void);
+extern int utc_ckmc_alias_info_list_all_free_p(void);
+extern int utc_ckmc_get_key_alias_info_list_p(void);
+extern int utc_ckmc_get_key_alias_info_list_n(void);
+extern int utc_ckmc_get_cert_alias_info_list_p(void);
+extern int utc_ckmc_get_cert_alias_info_list_n(void);
+extern int utc_ckmc_get_data_alias_info_list_p(void);
+extern int utc_ckmc_get_data_alias_info_list_n(void);
testcase tc_array[] = {
{"utc_ckmc_create_key_pair_rsa_p",utc_ckmc_create_key_pair_rsa_p,utc_key_manager_crypto_startup,utc_key_manager_crypto_cleanup},
{"utc_ckmc_param_list_free_n",utc_ckmc_param_list_free_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
{"utc_ckmc_generate_new_params_p",utc_ckmc_generate_new_params_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
{"utc_ckmc_generate_new_params_n",utc_ckmc_generate_new_params_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_get_alias_p",utc_ckmc_alias_info_get_alias_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_get_alias_n",utc_ckmc_alias_info_get_alias_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_is_password_protected_p",utc_ckmc_alias_info_is_password_protected_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_is_password_protected_n",utc_ckmc_alias_info_is_password_protected_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_list_all_free_p",utc_ckmc_alias_info_list_all_free_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_key_alias_info_list_p",utc_ckmc_get_key_alias_info_list_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_key_alias_info_list_n",utc_ckmc_get_key_alias_info_list_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_cert_alias_info_list_p",utc_ckmc_get_cert_alias_info_list_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_cert_alias_info_list_n",utc_ckmc_get_cert_alias_info_list_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_data_alias_info_list_p",utc_ckmc_get_data_alias_info_list_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_data_alias_info_list_n",utc_ckmc_get_data_alias_info_list_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
{NULL, NULL}
};
extern int utc_ckmc_param_list_free_n(void);
extern int utc_ckmc_generate_new_params_p(void);
extern int utc_ckmc_generate_new_params_n(void);
+extern int utc_ckmc_alias_info_get_alias_p(void);
+extern int utc_ckmc_alias_info_get_alias_n(void);
+extern int utc_ckmc_alias_info_is_password_protected_p(void);
+extern int utc_ckmc_alias_info_is_password_protected_n(void);
+extern int utc_ckmc_alias_info_list_all_free_p(void);
+extern int utc_ckmc_get_key_alias_info_list_p(void);
+extern int utc_ckmc_get_key_alias_info_list_n(void);
+extern int utc_ckmc_get_cert_alias_info_list_p(void);
+extern int utc_ckmc_get_cert_alias_info_list_n(void);
+extern int utc_ckmc_get_data_alias_info_list_p(void);
+extern int utc_ckmc_get_data_alias_info_list_n(void);
testcase tc_array[] = {
{"utc_ckmc_create_key_pair_rsa_p",utc_ckmc_create_key_pair_rsa_p,utc_key_manager_crypto_startup,utc_key_manager_crypto_cleanup},
{"utc_ckmc_param_list_free_n",utc_ckmc_param_list_free_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
{"utc_ckmc_generate_new_params_p",utc_ckmc_generate_new_params_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
{"utc_ckmc_generate_new_params_n",utc_ckmc_generate_new_params_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_get_alias_p",utc_ckmc_alias_info_get_alias_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_get_alias_n",utc_ckmc_alias_info_get_alias_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_is_password_protected_p",utc_ckmc_alias_info_is_password_protected_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_is_password_protected_n",utc_ckmc_alias_info_is_password_protected_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_list_all_free_p",utc_ckmc_alias_info_list_all_free_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_key_alias_info_list_p",utc_ckmc_get_key_alias_info_list_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_key_alias_info_list_n",utc_ckmc_get_key_alias_info_list_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_cert_alias_info_list_p",utc_ckmc_get_cert_alias_info_list_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_cert_alias_info_list_n",utc_ckmc_get_cert_alias_info_list_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_data_alias_info_list_p",utc_ckmc_get_data_alias_info_list_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_data_alias_info_list_n",utc_ckmc_get_data_alias_info_list_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
{NULL, NULL}
};
extern int utc_ckmc_param_list_free_n(void);
extern int utc_ckmc_generate_new_params_p(void);
extern int utc_ckmc_generate_new_params_n(void);
+extern int utc_ckmc_alias_info_get_alias_p(void);
+extern int utc_ckmc_alias_info_get_alias_n(void);
+extern int utc_ckmc_alias_info_is_password_protected_p(void);
+extern int utc_ckmc_alias_info_is_password_protected_n(void);
+extern int utc_ckmc_alias_info_list_all_free_p(void);
+extern int utc_ckmc_get_key_alias_info_list_p(void);
+extern int utc_ckmc_get_key_alias_info_list_n(void);
+extern int utc_ckmc_get_cert_alias_info_list_p(void);
+extern int utc_ckmc_get_cert_alias_info_list_n(void);
+extern int utc_ckmc_get_data_alias_info_list_p(void);
+extern int utc_ckmc_get_data_alias_info_list_n(void);
testcase tc_array[] = {
{"utc_ckmc_create_key_pair_rsa_p",utc_ckmc_create_key_pair_rsa_p,utc_key_manager_crypto_startup,utc_key_manager_crypto_cleanup},
{"utc_ckmc_param_list_free_n",utc_ckmc_param_list_free_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
{"utc_ckmc_generate_new_params_p",utc_ckmc_generate_new_params_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
{"utc_ckmc_generate_new_params_n",utc_ckmc_generate_new_params_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_get_alias_p",utc_ckmc_alias_info_get_alias_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_get_alias_n",utc_ckmc_alias_info_get_alias_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_is_password_protected_p",utc_ckmc_alias_info_is_password_protected_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_is_password_protected_n",utc_ckmc_alias_info_is_password_protected_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_alias_info_list_all_free_p",utc_ckmc_alias_info_list_all_free_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_key_alias_info_list_p",utc_ckmc_get_key_alias_info_list_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_key_alias_info_list_n",utc_ckmc_get_key_alias_info_list_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_cert_alias_info_list_p",utc_ckmc_get_cert_alias_info_list_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_cert_alias_info_list_n",utc_ckmc_get_cert_alias_info_list_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_data_alias_info_list_p",utc_ckmc_get_data_alias_info_list_p,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_data_alias_info_list_n",utc_ckmc_get_data_alias_info_list_n,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
{NULL, NULL}
};
return 0;
}
+
+/**
+* @testcase utc_ckmc_get_key_alias_info_list_p
+* @since 5.5
+* @scenario Gets all available key aliases
+*/
+int utc_ckmc_get_key_alias_info_list_p(void)
+{
+ ckmc_alias_info_list_s* ppalias_list;
+
+ int retCode = ckmc_get_key_alias_info_list(&ppalias_list);
+ ckmc_alias_info_list_all_free(ppalias_list);
+ assert_eq(retCode, CKMC_ERROR_NONE);
+ return 0;
+}
+
+/**
+* @testcase utc_ckmc_get_key_alias_info_list_p
+* @since 5.5
+* @scenario Gets all available key aliases
+*/
+int utc_ckmc_get_key_alias_info_list_n(void)
+{
+ int retCode = ckmc_get_key_alias_info_list(NULL);
+ assert_eq(retCode, CKMC_ERROR_INVALID_PARAMETER);
+ return 0;
+}
+
+/**
+* @testcase utc_ckmc_get_cert_alias_info_list_p
+* @since 5.5
+* @scenario Gets all available certificate aliases
+*/
+int utc_ckmc_get_cert_alias_info_list_p(void)
+{
+ ckmc_alias_info_list_s* ppalias_list;
+
+ int retCode = ckmc_get_cert_alias_info_list(&ppalias_list);
+ ckmc_alias_info_list_all_free(ppalias_list);
+ assert_eq(retCode, CKMC_ERROR_NONE);
+ return 0;
+}
+
+/**
+* @testcase utc_ckmc_get_cert_alias_info_list_p
+* @since 5.5
+* @scenario Gets all available certificate aliases
+*/
+int utc_ckmc_get_cert_alias_info_list_n(void)
+{
+ int retCode = ckmc_get_cert_alias_info_list(NULL);
+ assert_eq(retCode, CKMC_ERROR_INVALID_PARAMETER);
+ return 0;
+}
+
+/**
+* @testcase utc_ckmc_get_data_alias_info_list_p
+* @since 5.5
+* @scenario Gets all available data aliases
+*/
+int utc_ckmc_get_data_alias_info_list_p(void)
+{
+ ckmc_alias_info_list_s* ppalias_list;
+
+ int retCode = ckmc_get_data_alias_info_list(&ppalias_list);
+ ckmc_alias_info_list_all_free(ppalias_list);
+ assert_eq(retCode, CKMC_ERROR_NONE);
+ return 0;
+}
+
+/**
+* @testcase utc_ckmc_get_data_alias_info_list_p
+* @since 5.5
+* @scenario Gets all available data aliases
+*/
+int utc_ckmc_get_data_alias_info_list_n(void)
+{
+ int retCode = ckmc_get_data_alias_info_list(NULL);
+ assert_eq(retCode, CKMC_ERROR_INVALID_PARAMETER);
+ return 0;
+}
//
-// Copyright (c) 2014 Samsung Electronics Co., Ltd.
+// Copyright (c) 2014 - 2019 Samsung Electronics Co., Ltd.
//
// Licensed under the Apache License, Version 2.0 (the License);
// you may not use this file except in compliance with the License.
return 0;
}
+
+/**
+ * @testcase utc_ckmc_alias_info_get_alias_p
+ * @since_tizen 5.5
+ * @description Check if alias is accessible from struct
+ * @scenario Save key to db and check if alias is accessible
+ */
+int utc_ckmc_alias_info_get_alias_p(void)
+{
+ ckmc_key_s *key;
+ const char* alias = "new test alias";
+ ckmc_alias_info_list_s *ppalias_list, *tmp;
+ ckmc_policy_s policy;
+ policy.password = NULL;
+ policy.extractable = 1;
+
+ int ret = ckmc_key_new(
+ (unsigned char *)RSA_PUBKEY,
+ strlen(RSA_PUBKEY),
+ CKMC_KEY_RSA_PUBLIC,
+ NULL,
+ &key);
+
+ assert_eq(ret, CKMC_ERROR_NONE);
+ assert_eq(key->key_size, strlen(RSA_PUBKEY));
+ assert_eq(key->key_type, CKMC_KEY_RSA_PUBLIC);
+ assert_eq(key->password, NULL);
+ ret = ckmc_save_key(alias, *key, policy);
+ ckmc_key_free(key);
+ assert_eq(ret, CKMC_ERROR_NONE);
+
+ ret = ckmc_get_key_alias_info_list(&ppalias_list);
+ assert_eq(ret, CKMC_ERROR_NONE);
+
+ char* current_alias;
+ tmp = ppalias_list;
+ bool foundAlias = false;
+ while (tmp) {
+ ret = ckmc_alias_info_get_alias(tmp->info, ¤t_alias);
+ assert_eq(ret, CKMC_ERROR_NONE);
+ if (strcmp(current_alias, alias)) {
+ foundAlias = true;
+ break;
+ }
+ tmp = tmp->next;
+ }
+ ckmc_alias_info_list_all_free(ppalias_list);
+ ckmc_remove_key(alias);
+ assert_eq(foundAlias, true);
+ return 0;
+}
+
+/**
+ * @testcase utc_ckmc_alias_info_get_alias_n
+ * @since_tizen 5.5
+ * @description Check an error when getting a parameter from empty struct
+ * @scenario Create a empty struct and try to get empty paramerer
+ */
+int utc_ckmc_alias_info_get_alias_n(void)
+{
+ char* alias;
+ int retCode = ckmc_alias_info_get_alias(NULL, &alias);
+ assert_eq(retCode, CKMC_ERROR_INVALID_PARAMETER);
+ return 0;
+}
+
+/**
+ * @testcase utc_ckmc_alias_info_is_password_protected_p
+ * @since_tizen 5.5
+ * @description Check password protection status for key
+ * @scenario Save key to db and check alias password protection status
+ */
+int utc_ckmc_alias_info_is_password_protected_p(void)
+{
+ ckmc_key_s *key;
+ const char* alias = "new test alias";
+ ckmc_alias_info_list_s *ppalias_list, *tmp;
+ ckmc_policy_s policy;
+ policy.password = NULL;
+ policy.extractable = 1;
+
+ int ret = ckmc_key_new(
+ (unsigned char *)RSA_PUBKEY,
+ strlen(RSA_PUBKEY),
+ CKMC_KEY_RSA_PUBLIC,
+ NULL,
+ &key);
+
+ assert_eq(ret, CKMC_ERROR_NONE);
+ assert_eq(key->key_size, strlen(RSA_PUBKEY));
+ assert_eq(key->key_type, CKMC_KEY_RSA_PUBLIC);
+ assert_eq(key->password, NULL);
+ ret = ckmc_save_key(alias, *key, policy);
+ ckmc_key_free(key);
+ assert_eq(ret, CKMC_ERROR_NONE);
+
+ ret = ckmc_get_key_alias_info_list(&ppalias_list);
+ assert_eq(ret, CKMC_ERROR_NONE);
+
+ char* current_alias;
+ tmp = ppalias_list;
+ bool foundAlias = false;
+ while (tmp) {
+ ret = ckmc_alias_info_get_alias(tmp->info, ¤t_alias);
+ assert_eq(ret, CKMC_ERROR_NONE);
+ if (strcmp(current_alias, alias)) {
+ foundAlias = true;
+ bool is_password_protected;
+ ret = ckmc_alias_info_is_password_protected(tmp->info, &is_password_protected);
+ assert_eq(ret, CKMC_ERROR_NONE);
+ assert_eq(is_password_protected, false);
+ break;
+ }
+ tmp = tmp->next;
+ }
+ ckmc_alias_info_list_all_free(ppalias_list);
+ ckmc_remove_key(alias);
+ assert_eq(foundAlias, true);
+ return 0;
+}
+
+/**
+ * @testcase utc_ckmc_alias_info_is_password_protected_n
+ * @since_tizen 5.5
+ * @description Check an error when getting a parameter from empty struct
+ * @scenario Create a empty struct and try to get empty parameter
+ */
+int utc_ckmc_alias_info_is_password_protected_n(void)
+{
+ bool password_status;
+ int retCode = ckmc_alias_info_is_password_protected(NULL, &password_status);
+ assert_eq(retCode, CKMC_ERROR_INVALID_PARAMETER);
+ return 0;
+}
+
+/**
+ * @testcase utc_ckmc_alias_info_list_all_free_p
+ * @since_tizen 5.5
+ * @description Check if function for freeing resources work
+ * @scenario Create struct and use deleter function
+ */
+int utc_ckmc_alias_info_list_all_free_p(void)
+{
+ ckmc_alias_info_list_s* list = (ckmc_alias_info_list_s*)
+ malloc(sizeof(ckmc_alias_info_list_s));
+ list->info = NULL;
+ list->next = NULL;
+ ckmc_alias_info_list_all_free(list);
+ return 0;
+}