Do not cast the return value of malloc(3) and calloc(3)
From http://en.wikipedia.org/wiki/Malloc#Casting_and_type_safety " Casting and type safety malloc returns a void pointer (void *), which indicates that it is a pointer to a region of unknown data type. One may "cast" (see type conversion) this pointer to a specific type, as in int *ptr = (int*)malloc(10 * sizeof (int)); When using C, this is considered bad practice; it is redundant under the C standard. Moreover, putting in a cast may mask failure to include the header stdlib.h, in which the prototype for malloc is found. In the absence of a prototype for malloc, the C compiler will assume that malloc returns an int, and will issue a warning in a context such as the above, provided the error is not masked by a cast. On certain architectures and data models (such as LP64 on 64 bit systems, where long and pointers are 64 bit and int is 32 bit), this error can actually result in undefined behavior, as the implicitly declared malloc returns a 32 bit value whereas the actually defined function returns a 64 bit value. Depending on calling conventions and memory layout, this may result in stack smashing. The returned pointer need not be explicitly cast to a more specific pointer type, since ANSI C defines an implicit conversion between the void pointer type and other pointers to objects. An explicit cast of malloc's return value is sometimes performed because malloc originally returned a char *, but this cast is unnecessary in standard C code.[4][5] Omitting the cast, however, creates an incompatibility with C++, which does require it. The lack of a specific pointer type returned from malloc is type-unsafe behaviour: malloc allocates based on byte count but not on type. This distinguishes it from the C++ new operator that returns a pointer whose type relies on the operand. (see C Type Safety). " See also http://www.opensc-project.org/pipermail/opensc-devel/2010-August/014586.html git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@4636 c6295689-39f2-0310-b995-f0e70906c6a9
This commit is contained in:
parent
d37dd91b63
commit
f47416d60e
|
@ -454,7 +454,7 @@ static int encode_bit_string(const u8 * inbuf, size_t bits_left, u8 **outbuf,
|
|||
int skipped = 0;
|
||||
|
||||
bytes = (bits_left + 7)/8 + 1;
|
||||
*outbuf = out = (u8 *) malloc(bytes);
|
||||
*outbuf = out = malloc(bytes);
|
||||
if (out == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
*outlen = bytes;
|
||||
|
@ -561,7 +561,7 @@ static int asn1_encode_integer(int in, u8 ** obj, size_t * objsize)
|
|||
skip_sign = 0;
|
||||
skip_zero= 1;
|
||||
}
|
||||
*obj = p = (u8 *) malloc(sizeof(in)+1);
|
||||
*obj = p = malloc(sizeof(in)+1);
|
||||
if (*obj == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
do {
|
||||
|
@ -677,7 +677,7 @@ int sc_asn1_encode_object_id(u8 **buf, size_t *buflen,
|
|||
/* an OID must have at least two components */
|
||||
return SC_ERROR_INVALID_ARGUMENTS;
|
||||
*buflen = count = p - temp;
|
||||
*buf = (u8 *) malloc(count);
|
||||
*buf = malloc(count);
|
||||
if (!*buf)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
memcpy(*buf, temp, count);
|
||||
|
@ -750,7 +750,7 @@ static int asn1_write_element(sc_context_t *ctx, unsigned int tag,
|
|||
c++;
|
||||
}
|
||||
*outlen = 2 + c + datalen;
|
||||
buf = (u8 *) malloc(*outlen);
|
||||
buf = malloc(*outlen);
|
||||
if (buf == NULL)
|
||||
SC_FUNC_RETURN(ctx, SC_LOG_DEBUG_ASN1, SC_ERROR_OUT_OF_MEMORY);
|
||||
*out = p = buf;
|
||||
|
@ -1075,7 +1075,7 @@ static int asn1_decode_entry(sc_context_t *ctx,struct sc_asn1_entry *entry,
|
|||
}
|
||||
if (entry->flags & SC_ASN1_ALLOC) {
|
||||
u8 **buf = (u8 **) parm;
|
||||
*buf = (u8 *) malloc(objlen-1);
|
||||
*buf = malloc(objlen-1);
|
||||
if (*buf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
break;
|
||||
|
@ -1109,7 +1109,7 @@ static int asn1_decode_entry(sc_context_t *ctx,struct sc_asn1_entry *entry,
|
|||
/* Allocate buffer if needed */
|
||||
if (entry->flags & SC_ASN1_ALLOC) {
|
||||
u8 **buf = (u8 **) parm;
|
||||
*buf = (u8 *) malloc(objlen);
|
||||
*buf = malloc(objlen);
|
||||
if (*buf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
break;
|
||||
|
@ -1129,7 +1129,7 @@ static int asn1_decode_entry(sc_context_t *ctx,struct sc_asn1_entry *entry,
|
|||
assert(len != NULL);
|
||||
if (entry->flags & SC_ASN1_ALLOC) {
|
||||
u8 **buf = (u8 **) parm;
|
||||
*buf = (u8 *) malloc(objlen);
|
||||
*buf = malloc(objlen);
|
||||
if (*buf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
break;
|
||||
|
@ -1153,7 +1153,7 @@ static int asn1_decode_entry(sc_context_t *ctx,struct sc_asn1_entry *entry,
|
|||
assert(len != NULL);
|
||||
if (entry->flags & SC_ASN1_ALLOC) {
|
||||
u8 **buf = (u8 **) parm;
|
||||
*buf = (u8 *) malloc(objlen+1);
|
||||
*buf = malloc(objlen+1);
|
||||
if (*buf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
break;
|
||||
|
@ -1371,7 +1371,7 @@ static int asn1_encode_entry(sc_context_t *ctx, const struct sc_asn1_entry *entr
|
|||
buflen = 0;
|
||||
break;
|
||||
case SC_ASN1_BOOLEAN:
|
||||
buf = (u8 *) malloc(1);
|
||||
buf = malloc(1);
|
||||
if (buf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
break;
|
||||
|
@ -1399,7 +1399,7 @@ static int asn1_encode_entry(sc_context_t *ctx, const struct sc_asn1_entry *entr
|
|||
case SC_ASN1_OCTET_STRING:
|
||||
case SC_ASN1_UTF8STRING:
|
||||
assert(len != NULL);
|
||||
buf = (u8 *) malloc(*len + 1);
|
||||
buf = malloc(*len + 1);
|
||||
if (buf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
break;
|
||||
|
@ -1416,7 +1416,7 @@ static int asn1_encode_entry(sc_context_t *ctx, const struct sc_asn1_entry *entr
|
|||
break;
|
||||
case SC_ASN1_GENERALIZEDTIME:
|
||||
assert(len != NULL);
|
||||
buf = (u8 *) malloc(*len);
|
||||
buf = malloc(*len);
|
||||
if (buf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
break;
|
||||
|
@ -1434,7 +1434,7 @@ static int asn1_encode_entry(sc_context_t *ctx, const struct sc_asn1_entry *entr
|
|||
{
|
||||
const struct sc_pkcs15_id *id = (const struct sc_pkcs15_id *) parm;
|
||||
|
||||
buf = (u8 *) malloc(id->len);
|
||||
buf = malloc(id->len);
|
||||
if (buf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
break;
|
||||
|
@ -1573,7 +1573,7 @@ sc_der_copy(sc_pkcs15_der_t *dst, const sc_pkcs15_der_t *src)
|
|||
{
|
||||
memset(dst, 0, sizeof(*dst));
|
||||
if (src->len) {
|
||||
dst->value = (u8 *) malloc(src->len);
|
||||
dst->value = malloc(src->len);
|
||||
if (!dst->value)
|
||||
return;
|
||||
dst->len = src->len;
|
||||
|
|
|
@ -105,7 +105,7 @@ static int atrust_acos_init(struct sc_card *card)
|
|||
unsigned int flags;
|
||||
atrust_acos_ex_data *ex_data;
|
||||
|
||||
ex_data = (atrust_acos_ex_data *) calloc(1, sizeof(atrust_acos_ex_data));
|
||||
ex_data = calloc(1, sizeof(atrust_acos_ex_data));
|
||||
if (ex_data == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
|
|
|
@ -996,7 +996,7 @@ static int belpic_init(sc_card_t *card)
|
|||
if (card->type < 0)
|
||||
card->type = SC_CARD_TYPE_BELPIC_EID; /* Unknown card: assume it's the Belpic Card */
|
||||
|
||||
priv = (struct belpic_priv_data *) calloc(1, sizeof(struct belpic_priv_data));
|
||||
priv = calloc(1, sizeof(struct belpic_priv_data));
|
||||
if (priv == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
card->drv_data = priv;
|
||||
|
|
|
@ -1319,7 +1319,7 @@ static int entersafe_gen_key(sc_card_t *card, sc_entersafe_gen_key_data *data)
|
|||
SC_TEST_RET(card->ctx, SC_LOG_DEBUG_NORMAL, r, "APDU transmit failed");
|
||||
SC_TEST_RET(card->ctx, SC_LOG_DEBUG_NORMAL, sc_check_sw(card,apdu.sw1,apdu.sw2),"EnterSafe get pukey failed");
|
||||
|
||||
data->modulus = (u8 *) malloc(len);
|
||||
data->modulus = malloc(len);
|
||||
if (!data->modulus)
|
||||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_VERBOSE,SC_ERROR_OUT_OF_MEMORY);
|
||||
|
||||
|
|
|
@ -169,7 +169,7 @@ static int flex_init(sc_card_t *card)
|
|||
{
|
||||
struct flex_private_data *data;
|
||||
|
||||
if (!(data = (struct flex_private_data *) malloc(sizeof(*data))))
|
||||
if (!(data = malloc(sizeof(*data))))
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
card->drv_data = data;
|
||||
|
||||
|
|
|
@ -154,7 +154,7 @@ gpk_init(sc_card_t *card)
|
|||
unsigned long exponent, flags, kg;
|
||||
unsigned char info[13];
|
||||
|
||||
card->drv_data = priv = (struct gpk_private_data *) calloc(1, sizeof(*priv));
|
||||
card->drv_data = priv = calloc(1, sizeof(*priv));
|
||||
if (card->drv_data == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
|
|
|
@ -101,7 +101,7 @@ static int jcop_init(sc_card_t *card)
|
|||
sc_file_t *f;
|
||||
int flags;
|
||||
|
||||
drvdata=(struct jcop_private_data *) malloc(sizeof(struct jcop_private_data));
|
||||
drvdata=malloc(sizeof(struct jcop_private_data));
|
||||
if (!drvdata)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
memset(drvdata, 0, sizeof(struct jcop_private_data));
|
||||
|
@ -472,7 +472,7 @@ static int jcop_process_fci(sc_card_t *card, sc_file_t *file,
|
|||
u8 *filelist;
|
||||
nfiles=file->prop_attr[4];
|
||||
if (nfiles) {
|
||||
filelist=(u8 *) malloc(2*nfiles);
|
||||
filelist=malloc(2*nfiles);
|
||||
if (!filelist)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
memcpy(filelist, &file->prop_attr[5], 2*nfiles);
|
||||
|
|
|
@ -125,7 +125,7 @@ static struct df_info_s *get_df_info(sc_card_t * card)
|
|||
return dfi;
|
||||
}
|
||||
/* Not found, create it. */
|
||||
dfi = (struct df_info_s *)calloc(1, sizeof *dfi);
|
||||
dfi = calloc(1, sizeof *dfi);
|
||||
if (!dfi) {
|
||||
sc_debug(ctx, SC_LOG_DEBUG_NORMAL, "out of memory while allocating df_info\n");
|
||||
return NULL;
|
||||
|
@ -280,7 +280,7 @@ static int mcrd_init(sc_card_t * card)
|
|||
struct mcrd_priv_data *priv;
|
||||
sc_path_t tmppath;
|
||||
|
||||
priv = (struct mcrd_priv_data *)calloc(1, sizeof *priv);
|
||||
priv = calloc(1, sizeof *priv);
|
||||
if (!priv)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
card->name = "MICARDO 2.1";
|
||||
|
@ -359,7 +359,7 @@ static int load_special_files(sc_card_t * card)
|
|||
else if (r < 0) {
|
||||
SC_FUNC_RETURN(ctx, SC_LOG_DEBUG_VERBOSE, r);
|
||||
} else {
|
||||
rule = (struct rule_record_s *)malloc(sizeof *rule + r);
|
||||
rule = malloc(sizeof *rule + r);
|
||||
if (!rule)
|
||||
SC_FUNC_RETURN(ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY);
|
||||
rule->recno = recno;
|
||||
|
@ -390,7 +390,7 @@ static int load_special_files(sc_card_t * card)
|
|||
else if (r < 0) {
|
||||
SC_FUNC_RETURN(ctx, SC_LOG_DEBUG_VERBOSE, r);
|
||||
} else {
|
||||
keyd = (struct keyd_record_s *)malloc(sizeof *keyd + r);
|
||||
keyd = malloc(sizeof *keyd + r);
|
||||
if (!keyd)
|
||||
SC_FUNC_RETURN(ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY);
|
||||
keyd->recno = recno;
|
||||
|
|
|
@ -230,7 +230,7 @@ auth_init(struct sc_card *card)
|
|||
unsigned long flags;
|
||||
int rv = 0;
|
||||
|
||||
data = (struct auth_private_data *) calloc(1, sizeof(struct auth_private_data));
|
||||
data = calloc(1, sizeof(struct auth_private_data));
|
||||
if (!data)
|
||||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY);
|
||||
|
||||
|
@ -1288,7 +1288,7 @@ auth_generate_key(struct sc_card *card, int use_sm,
|
|||
}
|
||||
|
||||
sc_format_apdu(card, &apdu, SC_APDU_CASE_4_SHORT, 0x46, 0x00, 0x00);
|
||||
apdu.resp = (unsigned char *) calloc(1, data->key_bits/8+8);
|
||||
apdu.resp = calloc(1, data->key_bits/8+8);
|
||||
if (!apdu.resp)
|
||||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY);
|
||||
|
||||
|
@ -2141,7 +2141,7 @@ auth_read_binary(struct sc_card *card, unsigned int offset,
|
|||
for (jj=0; jj<rv && *(resp+jj)==0; jj++)
|
||||
;
|
||||
|
||||
bn[0].data = (unsigned char *) calloc(1, rv - jj);
|
||||
bn[0].data = calloc(1, rv - jj);
|
||||
bn[0].len = rv - jj;
|
||||
memcpy(bn[0].data, resp + jj, rv - jj);
|
||||
|
||||
|
@ -2149,7 +2149,7 @@ auth_read_binary(struct sc_card *card, unsigned int offset,
|
|||
1, resp, resp_len);
|
||||
SC_TEST_RET(card->ctx, SC_LOG_DEBUG_NORMAL, rv, "Cannot read RSA public key component");
|
||||
|
||||
bn[1].data = (unsigned char *) calloc(1, rv);
|
||||
bn[1].data = calloc(1, rv);
|
||||
bn[1].len = rv;
|
||||
memcpy(bn[1].data, resp, rv);
|
||||
|
||||
|
|
|
@ -130,7 +130,7 @@ pgp_init(sc_card_t *card)
|
|||
struct do_info *info;
|
||||
int r;
|
||||
|
||||
priv = (struct pgp_priv_data *) calloc (1, sizeof *priv);
|
||||
priv = calloc (1, sizeof *priv);
|
||||
if (!priv)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
card->name = "OpenPGP";
|
||||
|
@ -195,7 +195,7 @@ pgp_set_blob(struct blob *blob, const u8 *data, size_t len)
|
|||
free(blob->data);
|
||||
blob->len = len;
|
||||
blob->status = 0;
|
||||
blob->data = (unsigned char *) malloc(len);
|
||||
blob->data = malloc(len);
|
||||
memcpy(blob->data, data, len);
|
||||
|
||||
blob->file->size = len;
|
||||
|
@ -209,7 +209,7 @@ pgp_new_blob(struct blob *parent, unsigned int file_id,
|
|||
sc_file_t *file = sc_file_new();
|
||||
struct blob *blob, **p;
|
||||
|
||||
blob = (struct blob *) calloc(1, sizeof(*blob));
|
||||
blob = calloc(1, sizeof(*blob));
|
||||
blob->parent = parent;
|
||||
blob->id = file_id;
|
||||
blob->file = file;
|
||||
|
@ -639,7 +639,7 @@ pgp_decipher(sc_card_t *card, const u8 *in, size_t inlen,
|
|||
|
||||
/* There's some funny padding indicator that must be
|
||||
* prepended... hmm. */
|
||||
if (!(temp = (u8 *) malloc(inlen + 1)))
|
||||
if (!(temp = malloc(inlen + 1)))
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
temp[0] = '\0';
|
||||
memcpy(temp + 1, in, inlen);
|
||||
|
|
|
@ -331,7 +331,7 @@ static int piv_general_io(sc_card_t *card, int ins, int p1, int p2,
|
|||
|
||||
/* if using internal buffer, alloc new one */
|
||||
if (rbuf == rbufinitbuf) {
|
||||
*recvbuf = (u8 *)malloc(rbuflen);
|
||||
*recvbuf = malloc(rbuflen);
|
||||
sc_debug(card->ctx, SC_LOG_DEBUG_NORMAL, "DEE got buffer %p len %d",*recvbuf, rbuflen);
|
||||
if (*recvbuf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
|
@ -665,7 +665,7 @@ static int piv_get_data(sc_card_t * card, int enumtag,
|
|||
taglen = put_tag_and_len(0x99, derlen, NULL);
|
||||
*buf_len = put_tag_and_len(0x53, taglen, NULL);
|
||||
|
||||
*buf = (u8*) malloc(*buf_len);
|
||||
*buf = malloc(*buf_len);
|
||||
if (*buf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto err;
|
||||
|
@ -714,7 +714,7 @@ static int piv_get_data(sc_card_t * card, int enumtag,
|
|||
}
|
||||
sc_debug(card->ctx, SC_LOG_DEBUG_NORMAL,"get buffer for #%d len %d", enumtag, *buf_len);
|
||||
if (*buf == NULL && *buf_len > 0) {
|
||||
*buf = (u8*)malloc(*buf_len);
|
||||
*buf = malloc(*buf_len);
|
||||
if (*buf == NULL ) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto err;
|
||||
|
@ -853,7 +853,7 @@ static int piv_cache_internal_data(sc_card_t *card, int enumtag)
|
|||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_NOT_SUPPORTED);
|
||||
#endif
|
||||
} else {
|
||||
if (!(priv->obj_cache[enumtag].internal_obj_data = (u8*)malloc(taglen)))
|
||||
if (!(priv->obj_cache[enumtag].internal_obj_data = malloc(taglen)))
|
||||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY);
|
||||
|
||||
memcpy(priv->obj_cache[enumtag].internal_obj_data, tag, taglen);
|
||||
|
@ -870,7 +870,7 @@ static int piv_cache_internal_data(sc_card_t *card, int enumtag)
|
|||
if (taglen == 0)
|
||||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_FILE_NOT_FOUND);
|
||||
|
||||
if (!(priv->obj_cache[enumtag].internal_obj_data = (u8*)malloc(taglen)))
|
||||
if (!(priv->obj_cache[enumtag].internal_obj_data = malloc(taglen)))
|
||||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY);
|
||||
|
||||
memcpy(priv->obj_cache[enumtag].internal_obj_data, tag, taglen);
|
||||
|
@ -988,7 +988,7 @@ static int piv_put_data(sc_card_t *card, int tag,
|
|||
|
||||
tag_len = piv_objects[tag].tag_len;
|
||||
sbuflen = put_tag_and_len(0x5c, tag_len, NULL) + buf_len;
|
||||
if (!(sbuf = (u8 *) malloc(sbuflen)))
|
||||
if (!(sbuf = malloc(sbuflen)))
|
||||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY);
|
||||
|
||||
p = sbuf;
|
||||
|
@ -1027,7 +1027,7 @@ static int piv_write_certificate(sc_card_t *card,
|
|||
|
||||
sbuflen = put_tag_and_len(0x53, taglen, NULL);
|
||||
|
||||
sbuf = (u8*) malloc(sbuflen);
|
||||
sbuf = malloc(sbuflen);
|
||||
if (sbuf == NULL)
|
||||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY);
|
||||
p = sbuf;
|
||||
|
@ -1105,7 +1105,7 @@ static int piv_write_binary(sc_card_t *card, unsigned int idx,
|
|||
if (priv->w_buf_len == 0)
|
||||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_INTERNAL);
|
||||
|
||||
priv->w_buf = (u8 *)malloc(priv->w_buf_len);
|
||||
priv->w_buf = malloc(priv->w_buf_len);
|
||||
priv-> rwb_state = 0;
|
||||
}
|
||||
|
||||
|
@ -1865,7 +1865,7 @@ static int piv_init(sc_card_t *card)
|
|||
piv_private_data_t *priv;
|
||||
|
||||
SC_FUNC_CALLED(card->ctx, SC_LOG_DEBUG_VERBOSE);
|
||||
priv = (piv_private_data_t *) calloc(1, sizeof(piv_private_data_t));
|
||||
priv = calloc(1, sizeof(piv_private_data_t));
|
||||
|
||||
if (!priv)
|
||||
SC_FUNC_RETURN(card->ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY);
|
||||
|
|
|
@ -86,7 +86,7 @@ static int starcos_init(sc_card_t *card)
|
|||
unsigned int flags;
|
||||
starcos_ex_data *ex_data;
|
||||
|
||||
ex_data = (starcos_ex_data *) calloc(1, sizeof(starcos_ex_data));
|
||||
ex_data = calloc(1, sizeof(starcos_ex_data));
|
||||
if (ex_data == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
|
@ -985,7 +985,7 @@ static int starcos_gen_key(sc_card_t *card, sc_starcos_gen_key_data *data)
|
|||
if (apdu.sw1 != 0x90 || apdu.sw2 != 0x00)
|
||||
return sc_check_sw(card, apdu.sw1, apdu.sw2);
|
||||
|
||||
data->modulus = (u8 *) malloc(len);
|
||||
data->modulus = malloc(len);
|
||||
if (!data->modulus)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
p = data->modulus;
|
||||
|
|
|
@ -83,7 +83,7 @@ static int tcos_init(sc_card_t *card)
|
|||
{
|
||||
unsigned long flags;
|
||||
|
||||
tcos_data *data = (tcos_data *) malloc(sizeof(tcos_data));
|
||||
tcos_data *data = malloc(sizeof(tcos_data));
|
||||
if (!data) return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
card->name = "TCOS";
|
||||
|
|
|
@ -62,10 +62,10 @@ static sc_card_t * sc_card_new(sc_context_t *ctx)
|
|||
if (ctx == NULL)
|
||||
return NULL;
|
||||
|
||||
card = (sc_card_t *) calloc(1, sizeof(struct sc_card));
|
||||
card = calloc(1, sizeof(struct sc_card));
|
||||
if (card == NULL)
|
||||
return NULL;
|
||||
card->ops = (struct sc_card_operations *) malloc(sizeof(struct sc_card_operations));
|
||||
card->ops = malloc(sizeof(struct sc_card_operations));
|
||||
if (card->ops == NULL) {
|
||||
free(card);
|
||||
return NULL;
|
||||
|
|
|
@ -109,7 +109,7 @@ static int parse_dir_record(sc_card_t *card, u8 ** buf, size_t *buflen,
|
|||
sc_debug(card->ctx, SC_LOG_DEBUG_NORMAL, "AID is too long.\n");
|
||||
return SC_ERROR_INVALID_ASN1_OBJECT;
|
||||
}
|
||||
app = (sc_app_info_t *) malloc(sizeof(sc_app_info_t));
|
||||
app = malloc(sizeof(sc_app_info_t));
|
||||
if (app == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
|
@ -135,7 +135,7 @@ static int parse_dir_record(sc_card_t *card, u8 ** buf, size_t *buflen,
|
|||
} else
|
||||
app->path.len = 0;
|
||||
if (asn1_dirrecord[3].flags & SC_ASN1_PRESENT) {
|
||||
app->ddo = (u8 *) malloc(ddo_len);
|
||||
app->ddo = malloc(ddo_len);
|
||||
if (app->ddo == NULL) {
|
||||
free(app);
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
@ -189,7 +189,7 @@ int sc_enum_apps(sc_card_t *card)
|
|||
u8 *buf = NULL, *p;
|
||||
size_t bufsize;
|
||||
|
||||
buf = (u8 *) malloc(file_size);
|
||||
buf = malloc(file_size);
|
||||
if (buf == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
p = buf;
|
||||
|
|
|
@ -829,7 +829,7 @@ static int iso7816_decipher(sc_card_t *card,
|
|||
assert(card != NULL && crgram != NULL && out != NULL);
|
||||
SC_FUNC_CALLED(card->ctx, SC_LOG_DEBUG_NORMAL);
|
||||
|
||||
sbuf = (u8 *)malloc(crgram_len + 1);
|
||||
sbuf = malloc(crgram_len + 1);
|
||||
if (sbuf == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
|
|
|
@ -41,7 +41,7 @@ static const u8* ignoredFiles[] = {
|
|||
};
|
||||
|
||||
mscfs_t *mscfs_new(void) {
|
||||
mscfs_t *fs = (mscfs_t*)malloc(sizeof(mscfs_t));
|
||||
mscfs_t *fs = malloc(sizeof(mscfs_t));
|
||||
memset(fs, 0, sizeof(mscfs_t));
|
||||
memcpy(fs->currentPath, "\x3F\x00", 2);
|
||||
return fs;
|
||||
|
|
|
@ -215,12 +215,9 @@ static int sc_pkcs15emu_actalis_init(sc_pkcs15_card_t * p15card)
|
|||
|
||||
compLen = (size[0] << 8) + size[1];
|
||||
|
||||
compCert =
|
||||
(unsigned char *) malloc(compLen *
|
||||
sizeof(unsigned char));
|
||||
compCert = malloc(compLen * sizeof(unsigned char));
|
||||
len = 3 * compLen; /*Approximation of the uncompressed size */
|
||||
cert =
|
||||
(unsigned char *) malloc(len * sizeof(unsigned char));
|
||||
cert = malloc(len * sizeof(unsigned char));
|
||||
|
||||
sc_read_binary(card, 4, compCert, compLen, 0);
|
||||
|
||||
|
|
|
@ -175,7 +175,7 @@ static int sc_pkcs15emu_atrust_acos_init(sc_pkcs15_card_t *p15card)
|
|||
return SC_ERROR_INTERNAL;
|
||||
if (p15card->serial_number)
|
||||
free(p15card->serial_number);
|
||||
p15card->serial_number = (char *) malloc(strlen(buf2) + 1);
|
||||
p15card->serial_number = malloc(strlen(buf2) + 1);
|
||||
if (!p15card->serial_number)
|
||||
return SC_ERROR_INTERNAL;
|
||||
strcpy(p15card->serial_number, buf2);
|
||||
|
@ -186,7 +186,7 @@ static int sc_pkcs15emu_atrust_acos_init(sc_pkcs15_card_t *p15card)
|
|||
/* manufacturer ID */
|
||||
if (p15card->manufacturer_id)
|
||||
free(p15card->manufacturer_id);
|
||||
p15card->manufacturer_id = (char *) malloc(strlen(MANU_ID) + 1);
|
||||
p15card->manufacturer_id = malloc(strlen(MANU_ID) + 1);
|
||||
if (!p15card->manufacturer_id)
|
||||
return SC_ERROR_INTERNAL;
|
||||
strcpy(p15card->manufacturer_id, MANU_ID);
|
||||
|
@ -194,7 +194,7 @@ static int sc_pkcs15emu_atrust_acos_init(sc_pkcs15_card_t *p15card)
|
|||
/* card label */
|
||||
if (p15card->label)
|
||||
free(p15card->label);
|
||||
p15card->label = (char *) malloc(strlen(CARD_LABEL) + 1);
|
||||
p15card->label = malloc(strlen(CARD_LABEL) + 1);
|
||||
if (!p15card->label)
|
||||
return SC_ERROR_INTERNAL;
|
||||
strcpy(p15card->label, CARD_LABEL);
|
||||
|
|
|
@ -100,7 +100,7 @@ int sc_pkcs15_read_cached_file(struct sc_pkcs15_card *p15card,
|
|||
return SC_ERROR_FILE_NOT_FOUND; /* cache file bad? */
|
||||
}
|
||||
if (*buf == NULL) {
|
||||
data = (u8 *) malloc((size_t)stbuf.st_size);
|
||||
data = malloc((size_t)stbuf.st_size);
|
||||
if (data == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
} else
|
||||
|
|
|
@ -141,7 +141,7 @@ int sc_pkcs15_read_certificate(struct sc_pkcs15_card *p15card,
|
|||
len = copy.len;
|
||||
}
|
||||
|
||||
cert = (struct sc_pkcs15_cert *) malloc(sizeof(struct sc_pkcs15_cert));
|
||||
cert = malloc(sizeof(struct sc_pkcs15_cert));
|
||||
if (cert == NULL) {
|
||||
free(data);
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
|
|
@ -55,7 +55,7 @@ int sc_pkcs15_read_data_object(struct sc_pkcs15_card *p15card,
|
|||
r = sc_pkcs15_read_file(p15card, &info->path, &data, &len, NULL);
|
||||
if (r)
|
||||
return r;
|
||||
data_object = (struct sc_pkcs15_data *) malloc(sizeof(struct sc_pkcs15_data));
|
||||
data_object = malloc(sizeof(struct sc_pkcs15_data));
|
||||
if (data_object == NULL) {
|
||||
free(data);
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
|
|
@ -58,7 +58,7 @@ static int sc_pkcs15emu_entersafe_init( sc_pkcs15_card_t *p15card)
|
|||
return SC_ERROR_INTERNAL;
|
||||
if (p15card->serial_number)
|
||||
free(p15card->serial_number);
|
||||
p15card->serial_number = (char *) malloc(strlen(buf) + 1);
|
||||
p15card->serial_number = malloc(strlen(buf) + 1);
|
||||
if (!p15card->serial_number)
|
||||
return SC_ERROR_INTERNAL;
|
||||
strcpy(p15card->serial_number, buf);
|
||||
|
@ -66,7 +66,7 @@ static int sc_pkcs15emu_entersafe_init( sc_pkcs15_card_t *p15card)
|
|||
/* the manufacturer ID, in this case Giesecke & Devrient GmbH */
|
||||
if (p15card->manufacturer_id)
|
||||
free(p15card->manufacturer_id);
|
||||
p15card->manufacturer_id = (char *) malloc(strlen(MANU_ID) + 1);
|
||||
p15card->manufacturer_id = malloc(strlen(MANU_ID) + 1);
|
||||
if (!p15card->manufacturer_id)
|
||||
return SC_ERROR_INTERNAL;
|
||||
strcpy(p15card->manufacturer_id, MANU_ID);
|
||||
|
|
|
@ -321,7 +321,7 @@ static int sc_pkcs15emu_gemsafeGPK_init(sc_pkcs15_card_t *p15card)
|
|||
/* For performance reasons we will only */
|
||||
/* read part of the file , as it is about 6100 bytes */
|
||||
|
||||
gsdata = (unsigned char *) malloc(file->size);
|
||||
gsdata = malloc(file->size);
|
||||
|
||||
if (!gsdata)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
|
|
@ -514,10 +514,9 @@ static int loadCertificate(sc_pkcs15_card_t * p15card, int i,
|
|||
sc_read_binary(card, 2, size, 2, 0);
|
||||
|
||||
compLen = (size[0] << 8) + size[1];
|
||||
compCert =
|
||||
(unsigned char *) malloc(compLen * sizeof(unsigned char));
|
||||
compCert = malloc(compLen * sizeof(unsigned char));
|
||||
len = 4 * compLen; /*Approximation of the uncompressed size */
|
||||
cert = (unsigned char *) malloc(len * sizeof(unsigned char));
|
||||
cert = malloc(len * sizeof(unsigned char));
|
||||
|
||||
sc_read_binary(card, 4, compCert, compLen, 0);
|
||||
|
||||
|
|
|
@ -204,7 +204,7 @@ static int sc_pkcs15emu_postecert_init(sc_pkcs15_card_t * p15card)
|
|||
if (count < 256)
|
||||
return SC_ERROR_INTERNAL;
|
||||
|
||||
certi = (unsigned char *) malloc(count);
|
||||
certi = malloc(count);
|
||||
|
||||
if (!certi)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
|
|
@ -456,7 +456,7 @@ sc_pkcs15_read_prkey(struct sc_pkcs15_card *p15card,
|
|||
goto fail;
|
||||
}
|
||||
|
||||
*out = (struct sc_pkcs15_prkey *) malloc(sizeof(key));
|
||||
*out = malloc(sizeof(key));
|
||||
if (*out == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto fail;
|
||||
|
|
|
@ -545,7 +545,7 @@ sc_pkcs15_read_pubkey(struct sc_pkcs15_card *p15card,
|
|||
return r;
|
||||
}
|
||||
|
||||
pubkey = (struct sc_pkcs15_pubkey *) calloc(1, sizeof(struct sc_pkcs15_pubkey));
|
||||
pubkey = calloc(1, sizeof(struct sc_pkcs15_pubkey));
|
||||
if (pubkey == NULL) {
|
||||
free(data);
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
@ -588,7 +588,7 @@ sc_pkcs15_pubkey_from_prvkey(struct sc_context *ctx,
|
|||
assert(prvkey && out);
|
||||
|
||||
*out = NULL;
|
||||
pubkey = (struct sc_pkcs15_pubkey *) calloc(1, sizeof(struct sc_pkcs15_pubkey));
|
||||
pubkey = calloc(1, sizeof(struct sc_pkcs15_pubkey));
|
||||
if (!pubkey)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
|
@ -639,7 +639,7 @@ sc_pkcs15_pubkey_from_cert(struct sc_context *ctx,
|
|||
|
||||
assert(cert_blob && out);
|
||||
|
||||
pubkey = (struct sc_pkcs15_pubkey *) calloc(1, sizeof(struct sc_pkcs15_pubkey));
|
||||
pubkey = calloc(1, sizeof(struct sc_pkcs15_pubkey));
|
||||
if (!pubkey)
|
||||
SC_TEST_RET(ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY, "Cannot allocate pubkey");
|
||||
|
||||
|
|
|
@ -167,7 +167,7 @@ static int sc_pkcs15emu_starcert_init(sc_pkcs15_card_t *p15card)
|
|||
return SC_ERROR_INTERNAL;
|
||||
if (p15card->serial_number)
|
||||
free(p15card->serial_number);
|
||||
p15card->serial_number = (char *) malloc(strlen(buf) + 1);
|
||||
p15card->serial_number = malloc(strlen(buf) + 1);
|
||||
if (!p15card->serial_number)
|
||||
return SC_ERROR_INTERNAL;
|
||||
strcpy(p15card->serial_number, buf);
|
||||
|
@ -176,7 +176,7 @@ static int sc_pkcs15emu_starcert_init(sc_pkcs15_card_t *p15card)
|
|||
/* the manufacturer ID, in this case Giesecke & Devrient GmbH */
|
||||
if (p15card->manufacturer_id)
|
||||
free(p15card->manufacturer_id);
|
||||
p15card->manufacturer_id = (char *) malloc(strlen(MANU_ID) + 1);
|
||||
p15card->manufacturer_id = malloc(strlen(MANU_ID) + 1);
|
||||
if (!p15card->manufacturer_id)
|
||||
return SC_ERROR_INTERNAL;
|
||||
strcpy(p15card->manufacturer_id, MANU_ID);
|
||||
|
|
|
@ -376,7 +376,7 @@ int sc_pkcs15emu_object_add(sc_pkcs15_card_t *p15card, unsigned int type,
|
|||
unsigned int df_type;
|
||||
size_t data_len;
|
||||
|
||||
obj = (sc_pkcs15_object_t *) calloc(1, sizeof(*obj));
|
||||
obj = calloc(1, sizeof(*obj));
|
||||
if (!obj)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
memcpy(obj, in_obj, sizeof(*obj));
|
||||
|
|
|
@ -141,7 +141,7 @@ do_cipher(EVP_CIPHER_CTX *cipher_ctx, const u8 *in, size_t in_len,
|
|||
size_t bl, left, total;
|
||||
int done;
|
||||
|
||||
*out = p = (u8 *) malloc(in_len + EVP_CIPHER_CTX_key_length(cipher_ctx));
|
||||
*out = p = malloc(in_len + EVP_CIPHER_CTX_key_length(cipher_ctx));
|
||||
*out_len = total = 0;
|
||||
|
||||
bl = EVP_CIPHER_CTX_block_size(cipher_ctx);
|
||||
|
|
|
@ -148,7 +148,7 @@ int sc_pkcs15_parse_tokeninfo(sc_context_t *ctx,
|
|||
return r;
|
||||
}
|
||||
ti->version += 1;
|
||||
ti->serial_number = (char *) malloc(serial_len * 2 + 1);
|
||||
ti->serial_number = malloc(serial_len * 2 + 1);
|
||||
if (ti->serial_number == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
ti->serial_number[0] = 0;
|
||||
|
@ -413,12 +413,12 @@ int sc_pkcs15_encode_odf(sc_context_t *ctx,
|
|||
sc_debug(ctx, SC_LOG_DEBUG_NORMAL, "No DF's found.\n");
|
||||
return SC_ERROR_OBJECT_NOT_FOUND;
|
||||
}
|
||||
asn1_odf = (struct sc_asn1_entry *) malloc(sizeof(struct sc_asn1_entry) * (df_count + 1));
|
||||
asn1_odf = malloc(sizeof(struct sc_asn1_entry) * (df_count + 1));
|
||||
if (asn1_odf == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto err;
|
||||
}
|
||||
asn1_paths = (struct sc_asn1_entry *) malloc(sizeof(struct sc_asn1_entry) * (df_count * 2));
|
||||
asn1_paths = malloc(sizeof(struct sc_asn1_entry) * (df_count * 2));
|
||||
if (asn1_paths == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto err;
|
||||
|
@ -455,7 +455,7 @@ struct sc_pkcs15_card * sc_pkcs15_card_new(void)
|
|||
{
|
||||
struct sc_pkcs15_card *p15card;
|
||||
|
||||
p15card = (struct sc_pkcs15_card *) calloc(1, sizeof(struct sc_pkcs15_card));
|
||||
p15card = calloc(1, sizeof(struct sc_pkcs15_card));
|
||||
if (p15card == NULL)
|
||||
return NULL;
|
||||
p15card->magic = SC_PKCS15_CARD_MAGIC;
|
||||
|
@ -1415,7 +1415,7 @@ int sc_pkcs15_add_df(struct sc_pkcs15_card *p15card,
|
|||
if (p->type == type)
|
||||
return 0;
|
||||
|
||||
newdf = (struct sc_pkcs15_df *) calloc(1, sizeof(struct sc_pkcs15_df));
|
||||
newdf = calloc(1, sizeof(struct sc_pkcs15_df));
|
||||
if (newdf == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
newdf->path = *path;
|
||||
|
@ -1571,7 +1571,7 @@ int sc_pkcs15_parse_df(struct sc_pkcs15_card *p15card,
|
|||
const u8 *oldp;
|
||||
size_t obj_len;
|
||||
|
||||
obj = (struct sc_pkcs15_object *) calloc(1, sizeof(struct sc_pkcs15_object));
|
||||
obj = calloc(1, sizeof(struct sc_pkcs15_object));
|
||||
if (obj == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto ret;
|
||||
|
@ -1627,7 +1627,7 @@ int sc_pkcs15_add_unusedspace(struct sc_pkcs15_card *p15card,
|
|||
return SC_ERROR_INVALID_ARGUMENTS;
|
||||
}
|
||||
|
||||
new_unusedspace = (sc_pkcs15_unusedspace_t *) calloc(1, sizeof(sc_pkcs15_unusedspace_t));
|
||||
new_unusedspace = calloc(1, sizeof(sc_pkcs15_unusedspace_t));
|
||||
if (new_unusedspace == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
new_unusedspace->path = *path;
|
||||
|
@ -1832,7 +1832,7 @@ int sc_pkcs15_read_file(struct sc_pkcs15_card *p15card,
|
|||
goto fail_unlock;
|
||||
}
|
||||
}
|
||||
data = (u8 *) malloc(len);
|
||||
data = malloc(len);
|
||||
if (data == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto fail_unlock;
|
||||
|
|
|
@ -384,8 +384,8 @@ static int ctapi_load_module(sc_context_t *ctx,
|
|||
continue;
|
||||
}
|
||||
|
||||
reader = (sc_reader_t *) calloc(1, sizeof(sc_reader_t));
|
||||
priv = (struct ctapi_private_data *) calloc(1, sizeof(struct ctapi_private_data));
|
||||
reader = calloc(1, sizeof(sc_reader_t));
|
||||
priv = calloc(1, sizeof(struct ctapi_private_data));
|
||||
if (!priv)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
reader->drv_data = priv;
|
||||
|
@ -505,7 +505,7 @@ static int ctapi_init(sc_context_t *ctx, void **reader_data)
|
|||
struct ctapi_global_private_data *gpriv;
|
||||
scconf_block **blocks = NULL, *conf_block = NULL;
|
||||
|
||||
gpriv = (struct ctapi_global_private_data *) calloc(1, sizeof(struct ctapi_global_private_data));
|
||||
gpriv = calloc(1, sizeof(struct ctapi_global_private_data));
|
||||
if (gpriv == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
*reader_data = gpriv;
|
||||
|
|
|
@ -587,7 +587,7 @@ static int pcsc_init(sc_context_t *ctx, void **reader_data)
|
|||
|
||||
*reader_data = NULL;
|
||||
|
||||
gpriv = (struct pcsc_global_private_data *) calloc(1, sizeof(struct pcsc_global_private_data));
|
||||
gpriv = calloc(1, sizeof(struct pcsc_global_private_data));
|
||||
if (gpriv == NULL) {
|
||||
ret = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto out;
|
||||
|
@ -764,7 +764,7 @@ static int pcsc_detect_readers(sc_context_t *ctx, void *prv_data)
|
|||
}
|
||||
} while (rv != SCARD_S_SUCCESS);
|
||||
|
||||
reader_buf = (char *) malloc(sizeof(char) * reader_buf_size);
|
||||
reader_buf = malloc(sizeof(char) * reader_buf_size);
|
||||
if (!reader_buf) {
|
||||
ret = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto out;
|
||||
|
@ -800,11 +800,11 @@ static int pcsc_detect_readers(sc_context_t *ctx, void *prv_data)
|
|||
|
||||
sc_debug(ctx, SC_LOG_DEBUG_NORMAL, "Found new pcsc reader '%s'", reader_name);
|
||||
|
||||
if ((reader = (sc_reader_t *) calloc(1, sizeof(sc_reader_t))) == NULL) {
|
||||
if ((reader = calloc(1, sizeof(sc_reader_t))) == NULL) {
|
||||
ret = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto err1;
|
||||
}
|
||||
if ((priv = (struct pcsc_private_data *) calloc(1, sizeof(struct pcsc_private_data))) == NULL) {
|
||||
if ((priv = calloc(1, sizeof(struct pcsc_private_data))) == NULL) {
|
||||
ret = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto err1;
|
||||
}
|
||||
|
@ -988,7 +988,7 @@ static int pcsc_wait_for_event(sc_context_t *ctx, void *reader_data,
|
|||
}
|
||||
|
||||
if (reader_states == NULL || *reader_states == NULL) {
|
||||
rgReaderStates = (SCARD_READERSTATE *) calloc(sc_ctx_get_reader_count(ctx) + 2, sizeof(SCARD_READERSTATE));
|
||||
rgReaderStates = calloc(sc_ctx_get_reader_count(ctx) + 2, sizeof(SCARD_READERSTATE));
|
||||
if (!rgReaderStates)
|
||||
SC_FUNC_RETURN(ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY);
|
||||
|
||||
|
@ -1538,7 +1538,7 @@ static int cardmod_init(sc_context_t *ctx, void **reader_data)
|
|||
|
||||
*reader_data = NULL;
|
||||
|
||||
gpriv = (struct pcsc_global_private_data *) calloc(1, sizeof(struct pcsc_global_private_data));
|
||||
gpriv = calloc(1, sizeof(struct pcsc_global_private_data));
|
||||
if (gpriv == NULL) {
|
||||
ret = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto out;
|
||||
|
@ -1690,11 +1690,11 @@ static int cardmod_detect_readers(sc_context_t *ctx, void *prv_data)
|
|||
sc_debug(ctx, SC_LOG_DEBUG_NORMAL, "lecteur name = %s\n%s\n", reader_name,texte);
|
||||
}
|
||||
|
||||
if ((reader = (sc_reader_t *) calloc(1, sizeof(sc_reader_t))) == NULL) {
|
||||
if ((reader = calloc(1, sizeof(sc_reader_t))) == NULL) {
|
||||
ret = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto err1;
|
||||
}
|
||||
if ((priv = (struct pcsc_private_data *) malloc(sizeof(struct pcsc_private_data))) == NULL) {
|
||||
if ((priv = malloc(sizeof(struct pcsc_private_data))) == NULL) {
|
||||
ret = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto err1;
|
||||
}
|
||||
|
|
|
@ -364,7 +364,7 @@ int sc_file_add_acl_entry(sc_file_t *file, unsigned int operation,
|
|||
return 0;
|
||||
}
|
||||
|
||||
_new = (sc_acl_entry_t *) malloc(sizeof(sc_acl_entry_t));
|
||||
_new = malloc(sizeof(sc_acl_entry_t));
|
||||
if (_new == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
_new->method = method;
|
||||
|
|
|
@ -156,7 +156,7 @@ static CK_RV pkcs15_bind(struct sc_pkcs11_card *p11card)
|
|||
struct pkcs15_fw_data *fw_data;
|
||||
int rc;
|
||||
|
||||
if (!(fw_data = (struct pkcs15_fw_data *) calloc(1, sizeof(*fw_data))))
|
||||
if (!(fw_data = calloc(1, sizeof(*fw_data))))
|
||||
return CKR_HOST_MEMORY;
|
||||
p11card->fw_data = fw_data;
|
||||
|
||||
|
@ -252,7 +252,7 @@ __pkcs15_create_object(struct pkcs15_fw_data *fw_data,
|
|||
if (fw_data->num_objects >= MAX_OBJECTS)
|
||||
return SC_ERROR_TOO_MANY_OBJECTS;
|
||||
|
||||
if (!(obj = (struct pkcs15_any_object *) calloc(1, size)))
|
||||
if (!(obj = calloc(1, size)))
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
fw_data->objects[fw_data->num_objects++] = obj;
|
||||
|
@ -724,7 +724,7 @@ static void pkcs15_init_slot(struct sc_pkcs15_card *p15card,
|
|||
}
|
||||
if (p15card->card->caps & SC_CARD_CAP_RNG)
|
||||
slot->token_info.flags |= CKF_RNG;
|
||||
slot->fw_data = fw_data = (struct pkcs15_slot_data *) calloc(1, sizeof(*fw_data));
|
||||
slot->fw_data = fw_data = calloc(1, sizeof(*fw_data));
|
||||
fw_data->auth_obj = auth;
|
||||
|
||||
if (auth != NULL) {
|
||||
|
|
|
@ -35,7 +35,7 @@ C_LoadModule(const char *mspec, CK_FUNCTION_LIST_PTR_PTR funcs)
|
|||
|
||||
lt_dlinit();
|
||||
|
||||
mod = (sc_pkcs11_module_t *) calloc(1, sizeof(*mod));
|
||||
mod = calloc(1, sizeof(*mod));
|
||||
mod->_magic = MAGIC;
|
||||
|
||||
if (mspec == NULL)
|
||||
|
|
|
@ -123,7 +123,7 @@ sc_pkcs11_new_operation(sc_pkcs11_session_t *session,
|
|||
{
|
||||
sc_pkcs11_operation_t *res;
|
||||
|
||||
res = (sc_pkcs11_operation_t *) calloc(1, type->obj_size);
|
||||
res = calloc(1, type->obj_size);
|
||||
if (res) {
|
||||
res->session = session;
|
||||
res->type = type;
|
||||
|
@ -349,7 +349,7 @@ sc_pkcs11_signature_init(sc_pkcs11_operation_t *operation,
|
|||
struct signature_data *data;
|
||||
int rv;
|
||||
|
||||
if (!(data = (struct signature_data *) calloc(1, sizeof(*data))))
|
||||
if (!(data = calloc(1, sizeof(*data))))
|
||||
return CKR_HOST_MEMORY;
|
||||
|
||||
data->info = NULL;
|
||||
|
@ -566,7 +566,7 @@ sc_pkcs11_verify_init(sc_pkcs11_operation_t *operation,
|
|||
struct signature_data *data;
|
||||
int rv;
|
||||
|
||||
if (!(data = (struct signature_data *) calloc(1, sizeof(*data))))
|
||||
if (!(data = calloc(1, sizeof(*data))))
|
||||
return CKR_HOST_MEMORY;
|
||||
|
||||
data->info = NULL;
|
||||
|
@ -639,7 +639,7 @@ sc_pkcs11_verify_final(sc_pkcs11_operation_t *operation,
|
|||
rv = key->ops->get_attribute(operation->session, key, &attr);
|
||||
if (rv != CKR_OK)
|
||||
return rv;
|
||||
pubkey_value = (unsigned char *) malloc(attr.ulValueLen);
|
||||
pubkey_value = malloc(attr.ulValueLen);
|
||||
attr.pValue = pubkey_value;
|
||||
rv = key->ops->get_attribute(operation->session, key, &attr);
|
||||
if (rv != CKR_OK)
|
||||
|
@ -735,7 +735,7 @@ sc_pkcs11_decrypt_init(sc_pkcs11_operation_t *operation,
|
|||
{
|
||||
struct signature_data *data;
|
||||
|
||||
if (!(data = (struct signature_data *) calloc(1, sizeof(*data))))
|
||||
if (!(data = calloc(1, sizeof(*data))))
|
||||
return CKR_HOST_MEMORY;
|
||||
|
||||
data->key = key;
|
||||
|
@ -773,7 +773,7 @@ sc_pkcs11_new_fw_mechanism(CK_MECHANISM_TYPE mech,
|
|||
{
|
||||
sc_pkcs11_mechanism_type_t *mt;
|
||||
|
||||
mt = (sc_pkcs11_mechanism_type_t *) calloc(1, sizeof(*mt));
|
||||
mt = calloc(1, sizeof(*mt));
|
||||
if (mt == NULL)
|
||||
return mt;
|
||||
mt->mech = mech;
|
||||
|
@ -839,7 +839,7 @@ sc_pkcs11_register_sign_and_hash_mechanism(struct sc_pkcs11_card *p11card,
|
|||
/* These hash-based mechs can only be used for sign/verify */
|
||||
mech_info.flags &= (CKF_SIGN | CKF_SIGN_RECOVER | CKF_VERIFY | CKF_VERIFY_RECOVER);
|
||||
|
||||
info = (struct hash_signature_info *) calloc(1, sizeof(*info));
|
||||
info = calloc(1, sizeof(*info));
|
||||
info->mech = mech;
|
||||
info->sign_type = sign_type;
|
||||
info->hash_type = hash_type;
|
||||
|
|
|
@ -262,7 +262,7 @@ static CK_RV sc_pkcs11_openssl_md_init(sc_pkcs11_operation_t *op)
|
|||
if (!op || !(mt = op->type) || !(md = (EVP_MD *) mt->mech_data))
|
||||
return CKR_ARGUMENTS_BAD;
|
||||
|
||||
if (!(md_ctx = (EVP_MD_CTX *) calloc(1, sizeof(*md_ctx))))
|
||||
if (!(md_ctx = calloc(1, sizeof(*md_ctx))))
|
||||
return CKR_HOST_MEMORY;
|
||||
EVP_DigestInit(md_ctx, md);
|
||||
op->priv_data = md_ctx;
|
||||
|
@ -307,7 +307,7 @@ do_convert_bignum(sc_pkcs15_bignum_t *dst, BIGNUM *src)
|
|||
if (src == 0)
|
||||
return 0;
|
||||
dst->len = BN_num_bytes(src);
|
||||
dst->data = (u8 *) malloc(dst->len);
|
||||
dst->data = malloc(dst->len);
|
||||
if (dst->data == NULL)
|
||||
return 0;
|
||||
BN_bn2bin(src, dst->data);
|
||||
|
@ -521,7 +521,7 @@ CK_RV sc_pkcs11_verify_data(const unsigned char *pubkey, int pubkey_len,
|
|||
if (rsa == NULL)
|
||||
return CKR_DEVICE_MEMORY;
|
||||
|
||||
rsa_out = (unsigned char *) malloc(RSA_size(rsa));
|
||||
rsa_out = malloc(RSA_size(rsa));
|
||||
if (rsa_out == NULL) {
|
||||
RSA_free(rsa);
|
||||
return CKR_DEVICE_MEMORY;
|
||||
|
|
|
@ -42,7 +42,7 @@ extern CK_FUNCTION_LIST pkcs11_function_list;
|
|||
#include <pthread.h>
|
||||
CK_RV mutex_create(void **mutex)
|
||||
{
|
||||
pthread_mutex_t *m = (pthread_mutex_t *) malloc(sizeof(*mutex));
|
||||
pthread_mutex_t *m = malloc(sizeof(*mutex));
|
||||
if (m == NULL)
|
||||
return CKR_GENERAL_ERROR;;
|
||||
pthread_mutex_init(m, NULL);
|
||||
|
@ -80,7 +80,7 @@ CK_RV mutex_create(void **mutex)
|
|||
{
|
||||
CRITICAL_SECTION *m;
|
||||
|
||||
m = (CRITICAL_SECTION *) malloc(sizeof(*m));
|
||||
m = malloc(sizeof(*m));
|
||||
if (m == NULL)
|
||||
return CKR_GENERAL_ERROR;
|
||||
InitializeCriticalSection(m);
|
||||
|
@ -390,7 +390,7 @@ CK_RV C_GetSlotList(CK_BBOOL tokenPresent, /* only slots with token prese
|
|||
|
||||
card_detect_all();
|
||||
|
||||
found = (CK_SLOT_ID_PTR) malloc(list_size(&virtual_slots) * sizeof(CK_SLOT_ID));
|
||||
found = malloc(list_size(&virtual_slots) * sizeof(CK_SLOT_ID));
|
||||
|
||||
if (found == NULL) {
|
||||
rv = CKR_HOST_MEMORY;
|
||||
|
|
|
@ -1257,7 +1257,7 @@ int sc_pkcs11_any_cmp_attribute(struct sc_pkcs11_session *session, void *ptr, CK
|
|||
if (temp_attr.ulValueLen <= sizeof(temp1))
|
||||
temp_attr.pValue = temp1;
|
||||
else {
|
||||
temp2 = (u8 *) malloc(temp_attr.ulValueLen);
|
||||
temp2 = malloc(temp_attr.ulValueLen);
|
||||
if (temp2 == NULL)
|
||||
return 0;
|
||||
temp_attr.pValue = temp2;
|
||||
|
|
|
@ -60,8 +60,7 @@ static CK_RV init_spy(void)
|
|||
#endif
|
||||
|
||||
/* Allocates and initializes the pkcs11_spy structure */
|
||||
pkcs11_spy =
|
||||
(CK_FUNCTION_LIST_PTR) malloc(sizeof(CK_FUNCTION_LIST));
|
||||
pkcs11_spy = malloc(sizeof(CK_FUNCTION_LIST));
|
||||
if (pkcs11_spy) {
|
||||
/* with our own pkcs11.h we need to maintain this ourself */
|
||||
pkcs11_spy->version.major = 2;
|
||||
|
|
|
@ -68,10 +68,10 @@ sc_pkcs11_create_secret_key(struct sc_pkcs11_session *session,
|
|||
CK_ATTRIBUTE_PTR attr;
|
||||
int n, rv;
|
||||
|
||||
key = (struct pkcs11_secret_key *) calloc(1, sizeof(*key));
|
||||
key = calloc(1, sizeof(*key));
|
||||
if (!key)
|
||||
return CKR_HOST_MEMORY;
|
||||
key->value = (CK_BYTE *) malloc(value_len);
|
||||
key->value = malloc(value_len);
|
||||
if (!key->value) {
|
||||
pkcs11_secret_key_ops.release(key);
|
||||
return CKR_HOST_MEMORY; /* XXX correct? */
|
||||
|
@ -154,7 +154,7 @@ sc_pkcs11_secret_key_set_attribute(struct sc_pkcs11_session *session,
|
|||
case CKA_VALUE:
|
||||
if (key->value)
|
||||
free(key->value);
|
||||
key->value = (CK_BYTE *) malloc(attr->ulValueLen);
|
||||
key->value = malloc(attr->ulValueLen);
|
||||
if (key->value == NULL)
|
||||
return CKR_HOST_MEMORY;
|
||||
key->value_len = attr->ulValueLen;
|
||||
|
|
|
@ -737,7 +737,7 @@ do_cardos_extract_pubkey(sc_card_t *card, int nr, u8 tag,
|
|||
|| buf[2] != count + 1 || buf[3] != 0)
|
||||
return SC_ERROR_INTERNAL;
|
||||
bn->len = count;
|
||||
bn->data = (u8 *) malloc(count);
|
||||
bn->data = malloc(count);
|
||||
if (bn->data == NULL)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
memcpy(bn->data, buf + 4, count);
|
||||
|
|
|
@ -353,9 +353,9 @@ cflex_generate_key(sc_profile_t *profile, sc_pkcs15_card_t *p15card,
|
|||
/* extract public key */
|
||||
pubkey->algorithm = SC_ALGORITHM_RSA;
|
||||
pubkey->u.rsa.modulus.len = keybits / 8;
|
||||
pubkey->u.rsa.modulus.data = (u8 *) malloc(keybits / 8);
|
||||
pubkey->u.rsa.modulus.data = malloc(keybits / 8);
|
||||
pubkey->u.rsa.exponent.len = 3;
|
||||
pubkey->u.rsa.exponent.data = (u8 *) malloc(3);
|
||||
pubkey->u.rsa.exponent.data = malloc(3);
|
||||
memcpy(pubkey->u.rsa.exponent.data, "\x01\x00\x01", 3);
|
||||
if ((r = sc_select_file(card, &pukf->path, NULL)) < 0
|
||||
|| (r = sc_read_binary(card, 3, raw_pubkey, keybits / 8, 0)) < 0)
|
||||
|
|
|
@ -406,7 +406,7 @@ static int entersafe_generate_key(sc_profile_t *profile, sc_pkcs15_card_t *p15ca
|
|||
rsa->modulus.data = gendat.modulus;
|
||||
rsa->modulus.len = kinfo->modulus_length >> 3;
|
||||
/* set the exponent (always 0x10001) */
|
||||
buf = (u8 *) malloc(3);
|
||||
buf = malloc(3);
|
||||
if (!buf)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
buf[0] = 0x01;
|
||||
|
|
|
@ -915,7 +915,7 @@ gpk_add_bignum(struct pkpart *part, unsigned int tag,
|
|||
memset(comp, 0, sizeof(*comp));
|
||||
comp->tag = tag;
|
||||
comp->size = size + 1;
|
||||
comp->data = (u8 *) malloc(size + 1);
|
||||
comp->data = malloc(size + 1);
|
||||
|
||||
/* Add the tag */
|
||||
comp->data[0] = tag;
|
||||
|
@ -970,7 +970,7 @@ static int gpk_encode_rsa_key(sc_profile_t *profile, sc_card_t *card,
|
|||
unsigned int K = p->bytes / 2;
|
||||
u8 *crtbuf;
|
||||
|
||||
crtbuf = (u8 *) malloc(5 * K + 1);
|
||||
crtbuf = malloc(5 * K + 1);
|
||||
|
||||
crtbuf[0] = 0x05;
|
||||
gpk_bn2bin(crtbuf + 1 + 0 * K, &rsa->p, K);
|
||||
|
@ -1113,7 +1113,7 @@ gpk_read_rsa_key(sc_card_t *card, struct sc_pkcs15_pubkey_rsa *rsa)
|
|||
else
|
||||
continue;
|
||||
bn->len = r - 1;
|
||||
bn->data = (u8 *) malloc(bn->len);
|
||||
bn->data = malloc(bn->len);
|
||||
for (m = 0; m < bn->len; m++)
|
||||
bn->data[m] = buffer[bn->len - m];
|
||||
}
|
||||
|
|
|
@ -654,7 +654,7 @@ incrypto34_extract_pubkey(sc_card_t *card, int nr, u8 tag,
|
|||
|| buf[2] != count + 1 || buf[3] != 0)
|
||||
return SC_ERROR_INTERNAL;
|
||||
bn->len = count;
|
||||
bn->data = (u8 *) malloc(count);
|
||||
bn->data = malloc(count);
|
||||
memcpy(bn->data, buf + 4, count);
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -310,7 +310,7 @@ jcop_generate_key(sc_profile_t *profile, sc_pkcs15_card_t *p15card,
|
|||
args.exponent = 0x10001;
|
||||
sc_append_file_id(&args.pub_file_ref, temppubfile->id);
|
||||
sc_append_file_id(&args.pri_file_ref, keyfile->id);
|
||||
keybuf=(unsigned char *) malloc(keybits / 8);
|
||||
keybuf = malloc(keybits / 8);
|
||||
if (!keybuf) {
|
||||
r=SC_ERROR_OUT_OF_MEMORY;
|
||||
goto out;
|
||||
|
@ -327,7 +327,7 @@ jcop_generate_key(sc_profile_t *profile, sc_pkcs15_card_t *p15card,
|
|||
pubkey->u.rsa.modulus.len = keybits / 8;
|
||||
pubkey->u.rsa.modulus.data = keybuf;
|
||||
pubkey->u.rsa.exponent.len = 3;
|
||||
pubkey->u.rsa.exponent.data = (u8 *) malloc(3);
|
||||
pubkey->u.rsa.exponent.data = malloc(3);
|
||||
if (!pubkey->u.rsa.exponent.data) {
|
||||
pubkey->u.rsa.modulus.data = NULL;
|
||||
r=SC_ERROR_OUT_OF_MEMORY;
|
||||
|
|
|
@ -2576,7 +2576,7 @@ sc_pkcs15init_new_object(int type,
|
|||
struct sc_pkcs15_object *object;
|
||||
unsigned int data_size = 0;
|
||||
|
||||
object = (struct sc_pkcs15_object *) calloc(1, sizeof(*object));
|
||||
object = calloc(1, sizeof(*object));
|
||||
if (object == NULL)
|
||||
return NULL;
|
||||
object->type = type;
|
||||
|
@ -2845,7 +2845,7 @@ sc_pkcs15init_update_certificate(struct sc_pkcs15_card *p15card,
|
|||
|
||||
/* Fill the remaining space in the EF (if any) with zeros */
|
||||
if (certlen < file->size) {
|
||||
unsigned char *tmp = (unsigned char *) calloc(file->size - certlen, 1);
|
||||
unsigned char *tmp = calloc(file->size - certlen, 1);
|
||||
if (tmp == NULL) {
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
goto done;
|
||||
|
@ -3531,7 +3531,7 @@ sc_pkcs15init_read_info(struct sc_card *card, struct sc_profile *profile)
|
|||
len = file->size;
|
||||
sc_file_free(file);
|
||||
r = SC_ERROR_OUT_OF_MEMORY;
|
||||
if ((mem = (u8 *) malloc(len)) != NULL) {
|
||||
if ((mem = malloc(len)) != NULL) {
|
||||
r = sc_read_binary(card, 0, mem, len, 0);
|
||||
}
|
||||
} else {
|
||||
|
@ -3551,7 +3551,7 @@ set_info_string(char **strp, const u8 *p, size_t len)
|
|||
{
|
||||
char *s;
|
||||
|
||||
if (!(s = (char *) malloc(len+1)))
|
||||
if (!(s = malloc(len+1)))
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
memcpy(s, p, len);
|
||||
s[len] = '\0';
|
||||
|
|
|
@ -667,9 +667,9 @@ myeid_generate_key(struct sc_profile *profile, struct sc_pkcs15_card *p15card,
|
|||
|
||||
pubkey->algorithm = SC_ALGORITHM_RSA;
|
||||
pubkey->u.rsa.modulus.len = (keybits + 7) / 8;
|
||||
pubkey->u.rsa.modulus.data = (u8 *) malloc(pubkey->u.rsa.modulus.len);
|
||||
pubkey->u.rsa.modulus.data = malloc(pubkey->u.rsa.modulus.len);
|
||||
pubkey->u.rsa.exponent.len = MYEID_DEFAULT_PUBKEY_LEN;
|
||||
pubkey->u.rsa.exponent.data = (u8 *) malloc(MYEID_DEFAULT_PUBKEY_LEN);
|
||||
pubkey->u.rsa.exponent.data = malloc(MYEID_DEFAULT_PUBKEY_LEN);
|
||||
memcpy(pubkey->u.rsa.exponent.data, MYEID_DEFAULT_PUBKEY, MYEID_DEFAULT_PUBKEY_LEN);
|
||||
|
||||
/* Get public key modulus */
|
||||
|
|
|
@ -652,7 +652,7 @@ cosm_generate_key(struct sc_profile *profile, struct sc_pkcs15_card *p15card,
|
|||
args.exponent = 0x10001;
|
||||
args.key_bits = key_info->modulus_length;
|
||||
args.pubkey_len = key_info->modulus_length / 8;
|
||||
args.pubkey = (unsigned char *) malloc(key_info->modulus_length / 8);
|
||||
args.pubkey = malloc(key_info->modulus_length / 8);
|
||||
if (!args.pubkey)
|
||||
SC_TEST_RET(ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY, "cosm_generate_key() cannot allocate pubkey");
|
||||
|
||||
|
@ -662,13 +662,13 @@ cosm_generate_key(struct sc_profile *profile, struct sc_pkcs15_card *p15card,
|
|||
/* extract public key */
|
||||
pubkey->algorithm = SC_ALGORITHM_RSA;
|
||||
pubkey->u.rsa.modulus.len = key_info->modulus_length / 8;
|
||||
pubkey->u.rsa.modulus.data = (unsigned char *) malloc(key_info->modulus_length / 8);
|
||||
pubkey->u.rsa.modulus.data = malloc(key_info->modulus_length / 8);
|
||||
if (!pubkey->u.rsa.modulus.data)
|
||||
SC_TEST_RET(ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY, "cosm_generate_key() cannot allocate modulus buf");
|
||||
|
||||
/* FIXME and if the exponent length is not 3? */
|
||||
pubkey->u.rsa.exponent.len = 3;
|
||||
pubkey->u.rsa.exponent.data = (unsigned char *) malloc(3);
|
||||
pubkey->u.rsa.exponent.data = malloc(3);
|
||||
if (!pubkey->u.rsa.exponent.data)
|
||||
SC_TEST_RET(ctx, SC_LOG_DEBUG_NORMAL, SC_ERROR_OUT_OF_MEMORY, "cosm_generate_key() cannot allocate exponent buf");
|
||||
memcpy(pubkey->u.rsa.exponent.data, "\x01\x00\x01", 3);
|
||||
|
|
|
@ -468,9 +468,9 @@ setcos_generate_key(struct sc_profile *profile, struct sc_pkcs15_card *p15card,
|
|||
if (pubkey != NULL) {
|
||||
pubkey->algorithm = SC_ALGORITHM_RSA;
|
||||
pubkey->u.rsa.modulus.len = (keybits + 7) / 8;
|
||||
pubkey->u.rsa.modulus.data = (u8 *) malloc(pubkey->u.rsa.modulus.len);
|
||||
pubkey->u.rsa.modulus.data = malloc(pubkey->u.rsa.modulus.len);
|
||||
pubkey->u.rsa.exponent.len = SETCOS_DEFAULT_PUBKEY_LEN;
|
||||
pubkey->u.rsa.exponent.data = (u8 *) malloc(SETCOS_DEFAULT_PUBKEY_LEN);
|
||||
pubkey->u.rsa.exponent.data = malloc(SETCOS_DEFAULT_PUBKEY_LEN);
|
||||
memcpy(pubkey->u.rsa.exponent.data, SETCOS_DEFAULT_PUBKEY, SETCOS_DEFAULT_PUBKEY_LEN);
|
||||
|
||||
/* Get public key modulus */
|
||||
|
|
|
@ -660,7 +660,7 @@ static int starcos_write_pukey(sc_profile_t *profile, sc_card_t *card,
|
|||
return r;
|
||||
len = tfile->size;
|
||||
sc_file_free(tfile);
|
||||
buf = (u8 *) malloc(len);
|
||||
buf = malloc(len);
|
||||
if (!buf)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
/* read the complete IPF */
|
||||
|
@ -867,7 +867,7 @@ static int starcos_generate_key(sc_profile_t *profile, sc_pkcs15_card_t *p15card
|
|||
rsa->modulus.data = gendat.modulus;
|
||||
rsa->modulus.len = kinfo->modulus_length >> 3;
|
||||
/* set the exponent (always 0x10001) */
|
||||
buf = (u8 *) malloc(3);
|
||||
buf = malloc(3);
|
||||
if (!buf)
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
buf[0] = 0x01;
|
||||
|
|
|
@ -269,7 +269,7 @@ sc_profile_new(void)
|
|||
struct sc_pkcs15_card *p15card;
|
||||
struct sc_profile *pro;
|
||||
|
||||
pro = (struct sc_profile *) calloc(1, sizeof(*pro));
|
||||
pro = calloc(1, sizeof(*pro));
|
||||
if (pro == NULL)
|
||||
return NULL;
|
||||
pro->p15_spec = p15card = sc_pkcs15_card_new();
|
||||
|
@ -673,7 +673,7 @@ sc_profile_instantiate_file(sc_profile_t *profile, file_info *ft,
|
|||
struct file_info *fi;
|
||||
sc_card_t *card = profile->card;
|
||||
|
||||
fi = (file_info *) calloc(1, sizeof(*fi));
|
||||
fi = calloc(1, sizeof(*fi));
|
||||
if (fi == NULL)
|
||||
return NULL;
|
||||
fi->instance = fi;
|
||||
|
@ -874,7 +874,7 @@ new_key(struct sc_profile *profile, unsigned int type, unsigned int ref)
|
|||
return ai;
|
||||
}
|
||||
|
||||
ai = (struct auth_info *) calloc(1, sizeof(*ai));
|
||||
ai = calloc(1, sizeof(*ai));
|
||||
if (ai == NULL)
|
||||
return NULL;
|
||||
ai->type = type;
|
||||
|
@ -1018,13 +1018,13 @@ process_tmpl(struct state *cur, struct block *info,
|
|||
return 1;
|
||||
}
|
||||
|
||||
templ = (sc_profile_t *) calloc(1, sizeof(*templ));
|
||||
templ = calloc(1, sizeof(*templ));
|
||||
if (templ == NULL) {
|
||||
parse_error(cur, "memory allocation failed");
|
||||
return 1;
|
||||
}
|
||||
|
||||
tinfo = (sc_template_t *) calloc(1, sizeof(*tinfo));
|
||||
tinfo = calloc(1, sizeof(*tinfo));
|
||||
if (tinfo == NULL) {
|
||||
parse_error(cur, "memory allocation failed");
|
||||
free(templ);
|
||||
|
@ -1074,7 +1074,7 @@ add_file(sc_profile_t *profile, const char *name,
|
|||
{
|
||||
file_info *info;
|
||||
|
||||
info = (struct file_info *) calloc(1, sizeof(*info));
|
||||
info = calloc(1, sizeof(*info));
|
||||
if (info == NULL)
|
||||
return NULL;
|
||||
info->instance = info;
|
||||
|
@ -1371,7 +1371,7 @@ new_pin(struct sc_profile *profile, int id)
|
|||
* are usually created before we've read the card specific
|
||||
* profile
|
||||
*/
|
||||
pi = (struct pin_info *) calloc(1, sizeof(*pi));
|
||||
pi = calloc(1, sizeof(*pi));
|
||||
if (pi == NULL)
|
||||
return NULL;
|
||||
pi->id = id;
|
||||
|
@ -1539,7 +1539,7 @@ new_macro(sc_profile_t *profile, const char *name, scconf_list *value)
|
|||
sc_macro_t *mac;
|
||||
|
||||
if ((mac = find_macro(profile, name)) == NULL) {
|
||||
mac = (sc_macro_t *) calloc(1, sizeof(*mac));
|
||||
mac = calloc(1, sizeof(*mac));
|
||||
if (mac == NULL)
|
||||
return;
|
||||
mac->name = strdup(name);
|
||||
|
|
|
@ -106,7 +106,7 @@ static scconf_item *scconf_item_add_internal(scconf_parser * parser, int type)
|
|||
return item;
|
||||
}
|
||||
}
|
||||
item = (scconf_item *) malloc(sizeof(scconf_item));
|
||||
item = malloc(sizeof(scconf_item));
|
||||
if (!item) {
|
||||
return NULL;
|
||||
}
|
||||
|
@ -173,7 +173,7 @@ static void scconf_block_add_internal(scconf_parser * parser)
|
|||
|
||||
item = scconf_item_add_internal(parser, SCCONF_ITEM_TYPE_BLOCK);
|
||||
|
||||
block = (scconf_block *) malloc(sizeof(scconf_block));
|
||||
block = malloc(sizeof(scconf_block));
|
||||
if (!block) {
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -35,13 +35,13 @@ scconf_context *scconf_new(const char *filename)
|
|||
{
|
||||
scconf_context *config;
|
||||
|
||||
config = (scconf_context *) malloc(sizeof(scconf_context));
|
||||
config = malloc(sizeof(scconf_context));
|
||||
if (!config) {
|
||||
return NULL;
|
||||
}
|
||||
memset(config, 0, sizeof(scconf_context));
|
||||
config->filename = filename ? strdup(filename) : NULL;
|
||||
config->root = (scconf_block *) malloc(sizeof(scconf_block));
|
||||
config->root = malloc(sizeof(scconf_block));
|
||||
if (!config->root) {
|
||||
if (config->filename) {
|
||||
free(config->filename);
|
||||
|
@ -178,7 +178,7 @@ int scconf_put_int(scconf_block * block, const char *option, int value)
|
|||
{
|
||||
char *str;
|
||||
|
||||
str = (char *) malloc(64);
|
||||
str = malloc(64);
|
||||
if (!str) {
|
||||
return value;
|
||||
}
|
||||
|
@ -200,7 +200,7 @@ scconf_item *scconf_item_copy(const scconf_item * src, scconf_item ** dst)
|
|||
{
|
||||
scconf_item *ptr, *_dst = NULL, *next = NULL;
|
||||
|
||||
next = (scconf_item *) malloc(sizeof(scconf_item));
|
||||
next = malloc(sizeof(scconf_item));
|
||||
if (!next) {
|
||||
return NULL;
|
||||
}
|
||||
|
@ -209,7 +209,7 @@ scconf_item *scconf_item_copy(const scconf_item * src, scconf_item ** dst)
|
|||
_dst = next;
|
||||
while (src) {
|
||||
if (!next) {
|
||||
next = (scconf_item *) malloc(sizeof(scconf_item));
|
||||
next = malloc(sizeof(scconf_item));
|
||||
if (!next) {
|
||||
scconf_item_destroy(ptr);
|
||||
return NULL;
|
||||
|
@ -274,7 +274,7 @@ scconf_block *scconf_block_copy(const scconf_block * src, scconf_block ** dst)
|
|||
if (src) {
|
||||
scconf_block *_dst = NULL;
|
||||
|
||||
_dst = (scconf_block *) malloc(sizeof(scconf_block));
|
||||
_dst = malloc(sizeof(scconf_block));
|
||||
if (!_dst) {
|
||||
return NULL;
|
||||
}
|
||||
|
@ -304,7 +304,7 @@ scconf_list *scconf_list_add(scconf_list ** list, const char *value)
|
|||
{
|
||||
scconf_list *rec, **tmp;
|
||||
|
||||
rec = (scconf_list *) malloc(sizeof(scconf_list));
|
||||
rec = malloc(sizeof(scconf_list));
|
||||
if (!rec) {
|
||||
return NULL;
|
||||
}
|
||||
|
@ -378,7 +378,7 @@ const char **scconf_list_toarray(const scconf_list * list)
|
|||
len++;
|
||||
lp = lp->next;
|
||||
}
|
||||
tp = (const char **)malloc(sizeof(char *) * (len + 1));
|
||||
tp = malloc(sizeof(char *) * (len + 1));
|
||||
if (!tp)
|
||||
return tp;
|
||||
lp = list;
|
||||
|
@ -404,7 +404,7 @@ char *scconf_list_strdup(const scconf_list * list, const char *filler)
|
|||
if (filler) {
|
||||
len += scconf_list_array_length(list) * (strlen(filler) + 1);
|
||||
}
|
||||
buf = (char *) malloc(len);
|
||||
buf = malloc(len);
|
||||
if (!buf) {
|
||||
return NULL;
|
||||
}
|
||||
|
@ -542,7 +542,7 @@ static int parse_type(const scconf_context * config, const scconf_block * block,
|
|||
if (parm) {
|
||||
if (entry->flags & SCCONF_ALLOC) {
|
||||
char **buf = (char **) parm;
|
||||
*buf = (char *) malloc(vallen + 1);
|
||||
*buf = malloc(vallen + 1);
|
||||
if (*buf == NULL) {
|
||||
r = 1;
|
||||
break;
|
||||
|
|
|
@ -44,7 +44,7 @@ static void buf_init(BUFHAN * bp, FILE * fp, const char *saved_string)
|
|||
{
|
||||
bp->fp = fp;
|
||||
bp->saved_char = 0;
|
||||
bp->buf = (char *) malloc(256);
|
||||
bp->buf = malloc(256);
|
||||
bp->bufmax = 256;
|
||||
bp->bufcur = 0;
|
||||
bp->buf[0] = '\0';
|
||||
|
|
|
@ -141,7 +141,7 @@ static void scconf_write_items(scconf_writer * writer, const scconf_block * bloc
|
|||
/* header */
|
||||
name = scconf_list_get_string(subblock->name);
|
||||
datalen = strlen(item->key) + strlen(name) + 6;
|
||||
data = (char *) malloc(datalen);
|
||||
data = malloc(datalen);
|
||||
if (!data) {
|
||||
free(name);
|
||||
continue;
|
||||
|
@ -162,7 +162,7 @@ static void scconf_write_items(scconf_writer * writer, const scconf_block * bloc
|
|||
case SCCONF_ITEM_TYPE_VALUE:
|
||||
name = scconf_list_get_string(item->value.list);
|
||||
datalen = strlen(item->key) + strlen(name) + 6;
|
||||
data = (char *) malloc(datalen);
|
||||
data = malloc(datalen);
|
||||
if (!data) {
|
||||
free(name);
|
||||
continue;
|
||||
|
|
|
@ -39,7 +39,7 @@ static int dump_objects(const char *what, int type)
|
|||
}
|
||||
printf("%u found.\n", count);
|
||||
|
||||
objs = (struct sc_pkcs15_object **) calloc(count, sizeof(*objs));
|
||||
objs = calloc(count, sizeof(*objs));
|
||||
if ((count = sc_pkcs15_get_objects(p15card, type, objs, count)) < 0) {
|
||||
fprintf(stderr, "Error enumerating %s: %s\n",
|
||||
what, sc_strerror(count));
|
||||
|
|
|
@ -35,7 +35,7 @@ static int enum_pins(struct sc_pkcs15_object ***ret)
|
|||
fprintf(stderr, "No PIN codes found!\n");
|
||||
return 0;
|
||||
}
|
||||
objs = (struct sc_pkcs15_object **) calloc(n, sizeof(*objs));
|
||||
objs = calloc(n, sizeof(*objs));
|
||||
sc_pkcs15_get_objects(p15card, SC_PKCS15_TYPE_AUTH_PIN, objs, n);
|
||||
for (i = 0; i < n; i++) {
|
||||
sc_test_print_object(objs[i]);
|
||||
|
|
|
@ -99,7 +99,7 @@ static char *getpin(const char *prompt)
|
|||
pass[i] = 0;
|
||||
if (strlen(pass) == 0)
|
||||
return NULL;
|
||||
buf = (char *) malloc(8);
|
||||
buf = malloc(8);
|
||||
if (buf == NULL)
|
||||
return NULL;
|
||||
if (strlen(pass) > 8) {
|
||||
|
|
|
@ -384,7 +384,7 @@ static int print_file(sc_card_t *in_card, const sc_file_t *file,
|
|||
if (file->ef_structure == SC_FILE_EF_TRANSPARENT) {
|
||||
unsigned char *buf;
|
||||
|
||||
if (!(buf = (unsigned char *) malloc(file->size))) {
|
||||
if (!(buf = malloc(file->size))) {
|
||||
fprintf(stderr, "out of memory");
|
||||
return 1;
|
||||
}
|
||||
|
|
|
@ -188,7 +188,7 @@ static int load_cert(const char * cert_id, const char * cert_file,
|
|||
}
|
||||
|
||||
derlen = i2d_X509(cert, NULL);
|
||||
der = (u8 *) malloc(derlen);
|
||||
der = malloc(derlen);
|
||||
p = der;
|
||||
i2d_X509(cert, &p);
|
||||
}
|
||||
|
|
|
@ -713,7 +713,7 @@ static void list_slots(int tokens, int refresh, int print)
|
|||
rv = p11->C_GetSlotList(tokens, NULL, &p11_num_slots);
|
||||
if (rv != CKR_OK)
|
||||
p11_fatal("C_GetSlotList(NULL)", rv);
|
||||
p11_slots = (CK_SLOT_ID *) calloc(p11_num_slots, sizeof(CK_SLOT_ID));
|
||||
p11_slots = calloc(p11_num_slots, sizeof(CK_SLOT_ID));
|
||||
if (p11_slots == NULL) {
|
||||
perror("calloc failed");
|
||||
return;
|
||||
|
@ -2109,7 +2109,7 @@ static CK_ULONG get_mechanisms(CK_SLOT_ID slot, CK_MECHANISM_TYPE_PTR *pList,
|
|||
CK_RV rv;
|
||||
|
||||
rv = p11->C_GetMechanismList(slot, *pList, &ulCount);
|
||||
*pList = (CK_MECHANISM_TYPE *) calloc(ulCount, sizeof(*pList));
|
||||
*pList = calloc(ulCount, sizeof(*pList));
|
||||
if (*pList == NULL)
|
||||
util_fatal("calloc failed: %m");
|
||||
|
||||
|
|
|
@ -2157,7 +2157,7 @@ do_read_data_object(const char *name, u8 **out, size_t *outlen)
|
|||
size_t filesize = determine_filesize(name);
|
||||
int c;
|
||||
|
||||
*out = (u8 *) malloc(filesize);
|
||||
*out = malloc(filesize);
|
||||
if (*out == NULL) {
|
||||
return SC_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
|
@ -2184,7 +2184,7 @@ do_convert_bignum(sc_pkcs15_bignum_t *dst, const BIGNUM *src)
|
|||
if (src == 0)
|
||||
return 0;
|
||||
dst->len = BN_num_bytes(src);
|
||||
dst->data = (u8 *) malloc(dst->len);
|
||||
dst->data = malloc(dst->len);
|
||||
BN_bn2bin(src, dst->data);
|
||||
return 1;
|
||||
}
|
||||
|
@ -2333,7 +2333,7 @@ static int do_convert_cert(sc_pkcs15_der_t *der, X509 *cert)
|
|||
u8 *p;
|
||||
|
||||
der->len = i2d_X509(cert, NULL);
|
||||
der->value = p = (u8 *) malloc(der->len);
|
||||
der->value = p = malloc(der->len);
|
||||
i2d_X509(cert, &p);
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -247,7 +247,7 @@ print_pem_object(const char *kind, const u8*data, size_t data_len)
|
|||
buf_len += 2 * (buf_len / 64 + 2); /* certain platforms use CRLF */
|
||||
buf_len += 64; /* slack for checksum etc */
|
||||
|
||||
if (!(buf = (unsigned char *) malloc(buf_len))) {
|
||||
if (!(buf = malloc(buf_len))) {
|
||||
perror("print_pem_object");
|
||||
return 1;
|
||||
}
|
||||
|
|
|
@ -106,7 +106,7 @@ static int do_convert_bignum(sc_pkcs15_bignum_t *dst, BIGNUM *src)
|
|||
{
|
||||
if (src == 0) return 0;
|
||||
dst->len = BN_num_bytes(src);
|
||||
dst->data = (u8 *) malloc(dst->len);
|
||||
dst->data = malloc(dst->len);
|
||||
BN_bn2bin(src, dst->data);
|
||||
return 1;
|
||||
}
|
||||
|
@ -297,7 +297,7 @@ static int cert2der(X509 *cert, u8 **value)
|
|||
int len;
|
||||
u8 *p;
|
||||
len = i2d_X509(cert, NULL);
|
||||
p = *value = (u8*)malloc(len);
|
||||
p = *value = malloc(len);
|
||||
i2d_X509(cert, &p);
|
||||
return len;
|
||||
}
|
||||
|
@ -798,7 +798,7 @@ int main(int argc, char *argv[])
|
|||
goto out;
|
||||
}
|
||||
|
||||
b = (u8*)malloc(file->size);
|
||||
b = malloc(file->size);
|
||||
if(b == NULL)
|
||||
{
|
||||
printf("Not enougth memory.\n");
|
||||
|
@ -848,7 +848,7 @@ int main(int argc, char *argv[])
|
|||
goto out;
|
||||
}
|
||||
|
||||
b = (u8*)malloc(file->size);
|
||||
b = malloc(file->size);
|
||||
if(b == NULL)
|
||||
{
|
||||
printf("Not enougth memory.\n");
|
||||
|
|
Loading…
Reference in New Issue