Re: [PATCH v9 4/4] crypto: Add Allwinner Security System crypto accelerator

From: Herbert Xu
Date: Fri May 15 2015 - 02:53:03 EST


On Thu, May 14, 2015 at 02:59:01PM +0200, LABBE Corentin wrote:
>
> +int sun4i_hash_export(struct ahash_request *areq, void *out)
> +{
> + struct sun4i_req_ctx *op = ahash_request_ctx(areq);
> +
> + memcpy(out, op, sizeof(struct sun4i_req_ctx));
> + return 0;
> +}
> +
> +int sun4i_hash_import(struct ahash_request *areq, const void *in)
> +{
> + struct sun4i_req_ctx *op = ahash_request_ctx(areq);
> +
> + memcpy(op, in, sizeof(struct sun4i_req_ctx));

This is very wrong. You're importing an arbitrary ss pointer. The
whole point of having an import function instead of just a simple
memcpy is to deal with such problems.

Cheers,
--
Email: Herbert Xu <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/