crypto: chacha - constify ctx and iv arguments
authorEric Biggers <ebiggers@google.com>
Mon, 3 Jun 2019 05:47:14 +0000 (22:47 -0700)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 13 Jun 2019 06:31:40 +0000 (14:31 +0800)
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: Eric Biggers <ebiggers@google.com>
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/arm/crypto/chacha-neon-glue.c
arch/arm64/crypto/chacha-neon-glue.c
arch/x86/crypto/chacha_glue.c
crypto/chacha_generic.c
include/crypto/chacha.h

index 48a8953..a8e9b53 100644 (file)
@@ -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,
-                                 struct chacha_ctx *ctx, u8 *iv)
+                                 const struct chacha_ctx *ctx, const u8 *iv)
 {
        struct skcipher_walk walk;
        u32 state[16];
index 82029cd..1495d2b 100644 (file)
@@ -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,
-                                 struct chacha_ctx *ctx, u8 *iv)
+                                 const struct chacha_ctx *ctx, const u8 *iv)
 {
        struct skcipher_walk walk;
        u32 state[16];
index 4967ad6..7276b7e 100644 (file)
@@ -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,
-                                 struct chacha_ctx *ctx, u8 *iv)
+                                 const struct chacha_ctx *ctx, const u8 *iv)
 {
        u32 *state, state_buf[16 + 2] __aligned(8);
        int next_yield = 4096; /* bytes until next FPU yield */
index d2ec049..d283bd3 100644 (file)
@@ -36,7 +36,7 @@ static void chacha_docrypt(u32 *state, u8 *dst, const u8 *src,
 }
 
 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;
        u32 state[16];
@@ -60,7 +60,7 @@ static int chacha_stream_xor(struct skcipher_request *req,
        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[1]  = 0x3320646e; /* "nd 3" */
index 1fc70a6..d1e723c 100644 (file)
@@ -41,7 +41,7 @@ static inline void chacha20_block(u32 *state, u8 *stream)
 }
 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,
                           unsigned int keysize);