Additional EC routines _sc_card_add_ec_alg and sc_card_find_ec_alg
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@4903 c6295689-39f2-0310-b995-f0e70906c6a9
This commit is contained in:
parent
c34caeb662
commit
e2bd16ecd0
|
@ -706,6 +706,37 @@ int _sc_card_add_algorithm(sc_card_t *card, const sc_algorithm_info_t *info)
|
|||
return SC_SUCCESS;
|
||||
}
|
||||
|
||||
int _sc_card_add_ec_alg(sc_card_t *card, unsigned int key_length,
|
||||
unsigned long flags, unsigned long ext_flags)
|
||||
{
|
||||
sc_algorithm_info_t info;
|
||||
|
||||
memset(&info, 0, sizeof(info));
|
||||
info.algorithm = SC_ALGORITHM_EC;
|
||||
info.key_length = key_length;
|
||||
info.flags = flags;
|
||||
info.u._ec.ext_flags = ext_flags;
|
||||
|
||||
return _sc_card_add_algorithm(card, &info);
|
||||
}
|
||||
|
||||
sc_algorithm_info_t * sc_card_find_ec_alg(sc_card_t *card,
|
||||
unsigned int key_length)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < card->algorithm_count; i++) {
|
||||
sc_algorithm_info_t *info = &card->algorithms[i];
|
||||
|
||||
if (info->algorithm != SC_ALGORITHM_EC)
|
||||
continue;
|
||||
if (info->key_length != key_length)
|
||||
continue;
|
||||
return info;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
int _sc_card_add_rsa_alg(sc_card_t *card, unsigned int key_length,
|
||||
unsigned long flags, unsigned long exponent)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue