Re: [PATCH 02/04] Add dsa crypto ops

From: Herbert Xu
Date: Mon Jan 23 2006 - 20:20:34 EST


David H?rdeman <david@xxxxxxxx> wrote:
>
> +static int dsa_setkey(void *ctx, const u8 *key, unsigned int keylen, u32 *flags)
> +{
> + struct dsa_ctx *dctx = ctx;
> +
> + if (keylen != sizeof(struct key_payload_dsa *)) {
> + printk("Invalid key size in dsa_setkey\n");
> + return -EINVAL;
> + }
> +
> + dctx->key = (struct key_payload_dsa *)key;
> + return 0;
> +}

This is bad. You're putting a pointer to an object with an unknown
lifetime into the tfm.

Is there anything wrong with allocating the memory for it and storing
the key in the tfm like everyone else?

Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/