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_p1(void);
+extern int utc_ckmc_get_data_alias_info_list_p2(void);
extern int utc_ckmc_get_data_alias_info_list_n(void);
testcase tc_array[] = {
{"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_p1",utc_ckmc_get_data_alias_info_list_p1,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_data_alias_info_list_p2",utc_ckmc_get_data_alias_info_list_p2,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_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_p1(void);
+extern int utc_ckmc_get_data_alias_info_list_p2(void);
extern int utc_ckmc_get_data_alias_info_list_n(void);
testcase tc_array[] = {
{"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_p1",utc_ckmc_get_data_alias_info_list_p1,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_data_alias_info_list_p2",utc_ckmc_get_data_alias_info_list_p2,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_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_p1(void);
+extern int utc_ckmc_get_data_alias_info_list_p2(void);
extern int utc_ckmc_get_data_alias_info_list_n(void);
testcase tc_array[] = {
{"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_p1",utc_ckmc_get_data_alias_info_list_p1,utc_key_manager_type_startup,utc_key_manager_type_cleanup},
+ {"utc_ckmc_get_data_alias_info_list_p2",utc_ckmc_get_data_alias_info_list_p2,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}
};
/**
* @testcase utc_ckmc_get_key_alias_info_list_p
* @since 5.5
-* @scenario Gets all available key aliases
+* @scenario Gets all available key aliases (should return none)
*/
int utc_ckmc_get_key_alias_info_list_p(void)
{
- ckmc_alias_info_list_s* ppalias_list;
+ ckmc_alias_info_list_s* ppalias_list = NULL;
int retCode = ckmc_get_key_alias_info_list(&ppalias_list);
ckmc_alias_info_list_all_free(ppalias_list);
- assert_eq(retCode, CKMC_ERROR_NONE);
+ assert_eq(retCode, CKMC_ERROR_DB_ALIAS_UNKNOWN);
return 0;
}
/**
* @testcase utc_ckmc_get_cert_alias_info_list_p
* @since 5.5
-* @scenario Gets all available certificate aliases
+* @scenario Gets all available certificate aliases (should return none)
*/
int utc_ckmc_get_cert_alias_info_list_p(void)
{
- ckmc_alias_info_list_s* ppalias_list;
+ ckmc_alias_info_list_s* ppalias_list = NULL;
int retCode = ckmc_get_cert_alias_info_list(&ppalias_list);
ckmc_alias_info_list_all_free(ppalias_list);
- assert_eq(retCode, CKMC_ERROR_NONE);
+ assert_eq(retCode, CKMC_ERROR_DB_ALIAS_UNKNOWN);
return 0;
}
}
/**
-* @testcase utc_ckmc_get_data_alias_info_list_p
+* @testcase utc_ckmc_get_data_alias_info_list_p1
* @since 5.5
-* @scenario Gets all available data aliases
+* @scenario Gets all available data aliases (should return none)
*/
-int utc_ckmc_get_data_alias_info_list_p(void)
+int utc_ckmc_get_data_alias_info_list_p1(void)
{
- ckmc_alias_info_list_s* ppalias_list;
+ ckmc_alias_info_list_s* ppalias_list = NULL;
int retCode = ckmc_get_data_alias_info_list(&ppalias_list);
ckmc_alias_info_list_all_free(ppalias_list);
+ assert_eq(retCode, CKMC_ERROR_DB_ALIAS_UNKNOWN);
+ return 0;
+}
+
+/**
+* @testcase utc_ckmc_get_data_alias_info_list_p2
+* @since 5.5
+* @scenario Gets all available data aliases (should return 1)
+*/
+int utc_ckmc_get_data_alias_info_list_p2(void)
+{
+ ckmc_alias_info_list_s* ppalias_list = NULL;
+
+ int retCode;
+ char* policy_password = NULL;
+ char* bin_data = "My bin data";
+ char* alias = "save_data_p";
+ ckmc_raw_buffer_s test_data;
+ ckmc_policy_s test_policy;
+
+ test_data.data = (unsigned char *) bin_data;
+ test_data.size = strlen(bin_data);
+
+ test_policy.password = policy_password;
+ test_policy.extractable = true;
+
+ retCode = ckmc_save_data(alias, test_data, test_policy);
+ assert_eq(retCode, CKMC_ERROR_NONE);
+
+ retCode = ckmc_get_data_alias_info_list(&ppalias_list);
+ assert_eq(retCode, CKMC_ERROR_NONE);
+ assert_eq(ppalias_list->next, NULL);
+
+ ckmc_alias_info_list_all_free(ppalias_list);
+
+ retCode = ckmc_remove_alias(alias);
assert_eq(retCode, CKMC_ERROR_NONE);
return 0;
}
"zQIDAQAB\n"
"-----END PUBLIC KEY-----";
+static const char* RSA_PUB_KEY_PEM2 =
+ "-----BEGIN PUBLIC KEY-----\n"
+ "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2b1bXDa+S8/MGWnMkru4\n"
+ "T4tUddtZNi0NVjQn9RFH1NMa220GsRhRO56F77FlSVFKfSfVZKIiWg6C+DVCkcLf\n"
+ "zXJ/Z0pvwOQYBAqVMFjV6efQGN0JzJ1Unu7pPRiZl7RKGEI+cyzzrcDyrLLrQ2W7\n"
+ "0ZySkNEOv6Frx9JgC5NExuYY4lk2fQQa38JXiZkfyzif2em0px7mXbyf5LjccsKq\n"
+ "v1e+XLtMsL0ZefRcqsP++NzQAI8fKX7WBT+qK0HJDLiHrKOTWYzx6CwJ66LD/vvf\n"
+ "j55xtsKDLVDbsotvf8/m6VLMab+vqKk11TP4tq6yo0mwyTADvgl1zowQEO9I1W6o\n"
+ "zQIDAQAB\n"
+ "-----END PUBLIC KEY-----";
+
static const char *RSA_PRIKEY =
"-----BEGIN RSA PRIVATE KEY-----\n"
"Proc-Type: 4,ENCRYPTED\n"
*/
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;
+ ckmc_key_s test_key;
+ ckmc_policy_s test_policy;
+ int ret;
+ char* key_password = NULL;
+ char* policy_password = NULL;
+ char* current_alias;
+ const char* alias = "utc_ckmc_alias_info_get_alias_p_test_alias";
+ bool foundAlias = false;
- int ret = ckmc_key_new(
- (unsigned char *)RSA_PUBKEY,
- strlen(RSA_PUBKEY),
- CKMC_KEY_RSA_PUBLIC,
- NULL,
- &key);
+ test_key.raw_key = (unsigned char *)RSA_PUB_KEY_PEM2;
+ test_key.key_size = strlen(RSA_PUB_KEY_PEM2);
+ test_key.key_type = CKMC_KEY_RSA_PUBLIC;
+ test_key.password = key_password;
- 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);
+ test_policy.password = policy_password;
+ test_policy.extractable = true;
+ ret = ckmc_save_key(alias, test_key, test_policy);
+ 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)) {
+ if (strstr(current_alias, alias)) {
foundAlias = true;
break;
}
*/
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;
+ckmc_alias_info_list_s *ppalias_list, *tmp;
+ ckmc_key_s test_key;
+ ckmc_policy_s test_policy;
+ int ret;
+ char* current_alias;
+ const char* alias = "utc_ckmc_alias_info_get_alias_p_test_alias";
+ bool foundAlias = false;
- int ret = ckmc_key_new(
- (unsigned char *)RSA_PUBKEY,
- strlen(RSA_PUBKEY),
- CKMC_KEY_RSA_PUBLIC,
- NULL,
- &key);
+ test_key.raw_key = (unsigned char *)RSA_PUB_KEY_PEM2;
+ test_key.key_size = strlen(RSA_PUB_KEY_PEM2);
+ test_key.key_type = CKMC_KEY_RSA_PUBLIC;
+ test_key.password = NULL;
- 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);
+ test_policy.password = NULL;
+ test_policy.extractable = true;
+
+ ret = ckmc_save_key(alias, test_key, test_policy);
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)) {
+ if (strstr(current_alias, alias)) {
foundAlias = true;
bool is_password_protected;
ret = ckmc_alias_info_is_password_protected(tmp->info, &is_password_protected);