/* * Asynchronous Compression operations * * Copyright (c) 2016, Intel Corporation * Authors: Weigang Li * Giovanni Cabiddu * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the Free * Software Foundation; either version 2 of the License, or (at your option) * any later version. * */ #ifndef _CRYPTO_ACOMP_INT_H #define _CRYPTO_ACOMP_INT_H #include /* * Transform internal helpers. */ static inline void *acomp_request_ctx(struct acomp_req *req) { return req->__ctx; } static inline void *acomp_tfm_ctx(struct crypto_acomp *tfm) { return tfm->base.__crt_ctx; } static inline void acomp_request_complete(struct acomp_req *req, int err) { req->base.complete(&req->base, err); } static inline const char *acomp_alg_name(struct crypto_acomp *tfm) { return crypto_acomp_tfm(tfm)->__crt_alg->cra_name; } static inline struct acomp_req *__acomp_request_alloc(struct crypto_acomp *tfm) { struct acomp_req *req; req = kzalloc(sizeof(*req) + crypto_acomp_reqsize(tfm), GFP_KERNEL); if (likely(req)) acomp_request_set_tfm(req, tfm); return req; } static inline void __acomp_request_free(struct acomp_req *req) { kzfree(req); } /** * crypto_register_acomp() -- Register asynchronous compression algorithm * * Function registers an implementation of an asynchronous * compression algorithm * * @alg: algorithm definition * * Return: zero on success; error code in case of error */ int crypto_register_acomp(struct acomp_alg *alg); /** * crypto_unregister_acomp() -- Unregister asynchronous compression algorithm * * Function unregisters an implementation of an asynchronous * compression algorithm * * @alg: algorithm definition * * Return: zero on success; error code in case of error */ int crypto_unregister_acomp(struct acomp_alg *alg); #endif f='/cgit.cgi/linux/net-next.git/commit/include/net/bluetooth/rfcomm.h?h=nds-private-remove&id=11538d039ac6efcf4f1a6c536e1b87cd3668a9fd'>commitdiff
tion value='8'>8
AgeCommit message (Expand)AuthorFilesLines
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2017-01-17 13:46:29 +0000
committerHerbert Xu <herbert@gondor.apana.org.au>2017-01-23 22:41:33 +0800
commit11e3b725cfc282efe9d4a354153e99d86a16af08 (patch)
tree8b5b9e0e1bcae1ab98ee652ffb7b13b05c209bd6 /net/802/Kconfig
parentd6040764adcb5cb6de1489422411d701c158bb69 (diff)
crypto: arm64/aes-blk - honour iv_out requirement in CBC and CTR modes
Update the ARMv8 Crypto Extensions and the plain NEON AES implementations in CBC and CTR modes to return the next IV back to the skcipher API client. This is necessary for chaining to work correctly. Note that for CTR, this is only done if the request is a round multiple of the block size, since otherwise, chaining is impossible anyway. Cc: <stable@vger.kernel.org> # v3.16+ Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'net/802/Kconfig')