- Fixed a couple of memory leaks
- Fixed a bug in decoding EF(TokenInfo) git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@344 c6295689-39f2-0310-b995-f0e70906c6a9
This commit is contained in:
parent
e630a05dd5
commit
3fa7a056f1
|
@ -51,6 +51,7 @@ static const struct sc_card_driver setcos_drv = {
|
|||
|
||||
static int setcos_finish(struct sc_card *card)
|
||||
{
|
||||
free(DRVDATA(card));
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -297,6 +297,8 @@ static void sc_card_free(struct sc_card *card)
|
|||
free(card->app[i]->ddo);
|
||||
free(card->app[i]);
|
||||
}
|
||||
if (card->ef_dir != NULL)
|
||||
sc_file_free(card->ef_dir);
|
||||
free(card->ops);
|
||||
if (card->algorithms != NULL)
|
||||
free(card->algorithms);
|
||||
|
|
|
@ -273,6 +273,7 @@ void sc_pkcs15_free_certificate(struct sc_pkcs15_cert *cert)
|
|||
free(cert->key.data);
|
||||
free(cert->key.modulus);
|
||||
free(cert->issuer);
|
||||
free(cert->serial);
|
||||
free(cert->data);
|
||||
free(cert);
|
||||
}
|
||||
|
|
|
@ -108,13 +108,13 @@ static void parse_tokeninfo(struct sc_pkcs15_card *card, const u8 * buf, size_t
|
|||
strcat(card->serial_number, byte);
|
||||
}
|
||||
if (card->manufacturer_id == NULL) {
|
||||
if (asn1_tokeninfo[2].flags & SC_ASN1_PRESENT)
|
||||
if (asn1_toki[2].flags & SC_ASN1_PRESENT)
|
||||
card->manufacturer_id = strdup((char *) mnfid);
|
||||
else
|
||||
card->manufacturer_id = strdup("(unknown)");
|
||||
}
|
||||
if (card->label == NULL) {
|
||||
if (asn1_tokeninfo[3].flags & SC_ASN1_PRESENT)
|
||||
if (asn1_toki[3].flags & SC_ASN1_PRESENT)
|
||||
card->label = strdup((char *) label);
|
||||
else
|
||||
card->label = strdup("(unknown)");
|
||||
|
|
Loading…
Reference in New Issue