Re: [PATCH crypto -v4 1/2] AES-NI: Add support to accessunderlying blkcipher under cryptd ablkcipher

From: Huang Ying
Date: Thu Jan 15 2009 - 04:31:34 EST


On Thu, 2009-01-15 at 17:23 +0800, Herbert Xu wrote:
> On Thu, Jan 15, 2009 at 05:21:47PM +0800, Huang Ying wrote:
> > On Thu, 2009-01-15 at 16:47 +0800, Herbert Xu wrote:
> > > On Thu, Jan 15, 2009 at 04:28:33PM +0800, Huang Ying wrote:
> > > >
> > > > + tfm = crypto_alloc_ablkcipher(cryptd_alg_name, type, mask);
> > > > + BUG_ON(crypto_ablkcipher_tfm(tfm)->__crt_alg->cra_module !=
> > > > + THIS_MODULE);
> > >
> > > You need to check whether tfm is an error before dereferencing it.
> > > Also it's probably better to free the tfm and return an error rather
> > > than invoking BUG.
> >
> > Why do we need this check? Someone else may register cryptd template?
> > Which error number should be return? -EINVAL?
>
> -ENOMEM for example.

You mean something as follow:

if (crypto_ablkcipher_tfm(tfm)->__crt_alg->cra_module != THIS_MODULE)
return ERR_PTR(-ENOMEM);

I think -ENOMEM is not appropriate for this check.

Sorry for ask you same question twice. Why do we need this check? Some
other module may register cryptd template?

Best Regards,
Huang Ying

Attachment: signature.asc
Description: This is a digitally signed message part