Message ID | 1435814320-30347-4-git-send-email-lokeshvutla@ti.com (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Herbert Xu |
Headers | show |
On Thu, Jul 02, 2015 at 10:48:33AM +0530, Lokesh Vutla wrote: > Add aead_request_cast() api to get pointer to aead_request > from cryto_async_request. > > Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com> > --- > include/linux/crypto.h | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/include/linux/crypto.h b/include/linux/crypto.h > index 10df5d2..20fac3d 100644 > --- a/include/linux/crypto.h > +++ b/include/linux/crypto.h > @@ -1460,6 +1460,12 @@ static inline void aead_request_set_tfm(struct aead_request *req, > req->base.tfm = crypto_aead_tfm(crypto_aead_crt(tfm)->base); > } > > +static inline struct aead_request *aead_request_cast( > + struct crypto_async_request *req) > +{ > + return container_of(req, struct aead_request, base); container_of() ensures type safety, this can be a macro just fine.
On Thursday 02 July 2015 01:28 PM, Felipe Balbi wrote: > On Thu, Jul 02, 2015 at 10:48:33AM +0530, Lokesh Vutla wrote: >> Add aead_request_cast() api to get pointer to aead_request >> from cryto_async_request. >> >> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com> >> --- >> include/linux/crypto.h | 6 ++++++ >> 1 file changed, 6 insertions(+) >> >> diff --git a/include/linux/crypto.h b/include/linux/crypto.h >> index 10df5d2..20fac3d 100644 >> --- a/include/linux/crypto.h >> +++ b/include/linux/crypto.h >> @@ -1460,6 +1460,12 @@ static inline void aead_request_set_tfm(struct aead_request *req, >> req->base.tfm = crypto_aead_tfm(crypto_aead_crt(tfm)->base); >> } >> >> +static inline struct aead_request *aead_request_cast( >> + struct crypto_async_request *req) >> +{ >> + return container_of(req, struct aead_request, base); > > container_of() ensures type safety, this can be a macro just fine. There are many similar definitions for ablkcipher.. etc,in crypto library. So I tried to make it uniform for the entire library. Thanks and regards, Lokesh > -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Jul 02, 2015 at 10:48:33AM +0530, Lokesh Vutla wrote: > Add aead_request_cast() api to get pointer to aead_request > from cryto_async_request. > > Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com> > --- > include/linux/crypto.h | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/include/linux/crypto.h b/include/linux/crypto.h > index 10df5d2..20fac3d 100644 > --- a/include/linux/crypto.h > +++ b/include/linux/crypto.h > @@ -1460,6 +1460,12 @@ static inline void aead_request_set_tfm(struct aead_request *req, > req->base.tfm = crypto_aead_tfm(crypto_aead_crt(tfm)->base); > } > > +static inline struct aead_request *aead_request_cast( > + struct crypto_async_request *req) > +{ > + return container_of(req, struct aead_request, base); > +} > + This should go into include/crypto/internal/aead.h. Thanks,
diff --git a/include/linux/crypto.h b/include/linux/crypto.h index 10df5d2..20fac3d 100644 --- a/include/linux/crypto.h +++ b/include/linux/crypto.h @@ -1460,6 +1460,12 @@ static inline void aead_request_set_tfm(struct aead_request *req, req->base.tfm = crypto_aead_tfm(crypto_aead_crt(tfm)->base); } +static inline struct aead_request *aead_request_cast( + struct crypto_async_request *req) +{ + return container_of(req, struct aead_request, base); +} + /** * aead_request_alloc() - allocate request data structure * @tfm: cipher handle to be registered with the request
Add aead_request_cast() api to get pointer to aead_request from cryto_async_request. Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com> --- include/linux/crypto.h | 6 ++++++ 1 file changed, 6 insertions(+)