Commit 860ab2e5 authored by Eric Biggers's avatar Eric Biggers Committed by Herbert Xu

crypto: chacha - constify ctx and iv arguments

Constify the ctx and iv arguments to crypto_chacha_init() and the
various chacha*_stream_xor() functions.  This makes it clear that they
are not modified.
Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
Acked-by: default avatarArd Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 76cadf22
...@@ -63,7 +63,7 @@ static void chacha_doneon(u32 *state, u8 *dst, const u8 *src, ...@@ -63,7 +63,7 @@ static void chacha_doneon(u32 *state, u8 *dst, const u8 *src,
} }
static int chacha_neon_stream_xor(struct skcipher_request *req, static int chacha_neon_stream_xor(struct skcipher_request *req,
struct chacha_ctx *ctx, u8 *iv) const struct chacha_ctx *ctx, const u8 *iv)
{ {
struct skcipher_walk walk; struct skcipher_walk walk;
u32 state[16]; u32 state[16];
......
...@@ -60,7 +60,7 @@ static void chacha_doneon(u32 *state, u8 *dst, const u8 *src, ...@@ -60,7 +60,7 @@ static void chacha_doneon(u32 *state, u8 *dst, const u8 *src,
} }
static int chacha_neon_stream_xor(struct skcipher_request *req, static int chacha_neon_stream_xor(struct skcipher_request *req,
struct chacha_ctx *ctx, u8 *iv) const struct chacha_ctx *ctx, const u8 *iv)
{ {
struct skcipher_walk walk; struct skcipher_walk walk;
u32 state[16]; u32 state[16];
......
...@@ -128,7 +128,7 @@ static void chacha_dosimd(u32 *state, u8 *dst, const u8 *src, ...@@ -128,7 +128,7 @@ static void chacha_dosimd(u32 *state, u8 *dst, const u8 *src,
} }
static int chacha_simd_stream_xor(struct skcipher_walk *walk, static int chacha_simd_stream_xor(struct skcipher_walk *walk,
struct chacha_ctx *ctx, u8 *iv) const struct chacha_ctx *ctx, const u8 *iv)
{ {
u32 *state, state_buf[16 + 2] __aligned(8); u32 *state, state_buf[16 + 2] __aligned(8);
int next_yield = 4096; /* bytes until next FPU yield */ int next_yield = 4096; /* bytes until next FPU yield */
......
...@@ -36,7 +36,7 @@ static void chacha_docrypt(u32 *state, u8 *dst, const u8 *src, ...@@ -36,7 +36,7 @@ static void chacha_docrypt(u32 *state, u8 *dst, const u8 *src,
} }
static int chacha_stream_xor(struct skcipher_request *req, static int chacha_stream_xor(struct skcipher_request *req,
struct chacha_ctx *ctx, u8 *iv) const struct chacha_ctx *ctx, const u8 *iv)
{ {
struct skcipher_walk walk; struct skcipher_walk walk;
u32 state[16]; u32 state[16];
...@@ -60,7 +60,7 @@ static int chacha_stream_xor(struct skcipher_request *req, ...@@ -60,7 +60,7 @@ static int chacha_stream_xor(struct skcipher_request *req,
return err; return err;
} }
void crypto_chacha_init(u32 *state, struct chacha_ctx *ctx, u8 *iv) void crypto_chacha_init(u32 *state, const struct chacha_ctx *ctx, const u8 *iv)
{ {
state[0] = 0x61707865; /* "expa" */ state[0] = 0x61707865; /* "expa" */
state[1] = 0x3320646e; /* "nd 3" */ state[1] = 0x3320646e; /* "nd 3" */
......
...@@ -41,7 +41,7 @@ static inline void chacha20_block(u32 *state, u8 *stream) ...@@ -41,7 +41,7 @@ static inline void chacha20_block(u32 *state, u8 *stream)
} }
void hchacha_block(const u32 *in, u32 *out, int nrounds); void hchacha_block(const u32 *in, u32 *out, int nrounds);
void crypto_chacha_init(u32 *state, struct chacha_ctx *ctx, u8 *iv); void crypto_chacha_init(u32 *state, const struct chacha_ctx *ctx, const u8 *iv);
int crypto_chacha20_setkey(struct crypto_skcipher *tfm, const u8 *key, int crypto_chacha20_setkey(struct crypto_skcipher *tfm, const u8 *key,
unsigned int keysize); unsigned int keysize);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment