2010-10-25 23:45:22

by Mark Allyn

[permalink] [raw]
Subject: Question on structures


Folks:

Perhaps this is due to me being a neophyte . . .

I notice that some of the structure have two different sets of functions.

For example, the ahash_alg structure has .init and then .base.cra_init.
What is the difference between the two?

Thanks

Truly,

Mark Allyn
Portland, Oregon
http://www.allyn.com
971-563-7588


2010-10-26 00:07:38

by Herbert Xu

[permalink] [raw]
Subject: Re: Question on structures

Mark Allyn <[email protected]> wrote:
>
> Folks:
>
> Perhaps this is due to me being a neophyte . . .
>
> I notice that some of the structure have two different sets of functions.
>
> For example, the ahash_alg structure has .init and then .base.cra_init.
> What is the difference between the two?

cra_init initialises a tfm object, while init is an operation
specific to hash algorithms --- it initialises the hash state.

Cheers,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2010-10-27 18:37:31

by Mark Allyn

[permalink] [raw]
Subject: Re: Question on structures


I am still confused.

I have a hardware device whose driver has its own initialization API that
accepts the space for its own format for context as well as the mode.

Would I use that api for both the algorithm init and the context init
as the format of the context is unique to the hardware that I am using?

The docs don't explain this (unless there is documentation elsewhere
outside the kernel tree)

Truly,

Mark Allyn
Portland, Oregon
http://www.allyn.com
971-563-7588

On Mon, 25 Oct 2010, Herbert Xu wrote:

> Mark Allyn <[email protected]> wrote:
>>
>> Folks:
>>
>> Perhaps this is due to me being a neophyte . . .
>>
>> I notice that some of the structure have two different sets of functions.
>>
>> For example, the ahash_alg structure has .init and then .base.cra_init.
>> What is the difference between the two?
>
> cra_init initialises a tfm object, while init is an operation
> specific to hash algorithms --- it initialises the hash state.
>
> Cheers,
> --
> Email: Herbert Xu <[email protected]>
> Home Page: http://gondor.apana.org.au/~herbert/
> PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
>
>