summaryrefslogtreecommitdiff
path: root/crypto/openssl/crypto/chacha/chacha_enc.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/openssl/crypto/chacha/chacha_enc.c')
-rw-r--r--crypto/openssl/crypto/chacha/chacha_enc.c19
1 files changed, 14 insertions, 5 deletions
diff --git a/crypto/openssl/crypto/chacha/chacha_enc.c b/crypto/openssl/crypto/chacha/chacha_enc.c
index 239f68ab825e3..18251eac08de9 100644
--- a/crypto/openssl/crypto/chacha/chacha_enc.c
+++ b/crypto/openssl/crypto/chacha/chacha_enc.c
@@ -11,7 +11,8 @@
#include <string.h>
-#include "internal/chacha.h"
+#include "crypto/chacha.h"
+#include "crypto/ctype.h"
typedef unsigned int u32;
typedef unsigned char u8;
@@ -78,10 +79,18 @@ void ChaCha20_ctr32(unsigned char *out, const unsigned char *inp,
size_t todo, i;
/* sigma constant "expand 32-byte k" in little-endian encoding */
- input[0] = ((u32)'e') | ((u32)'x'<<8) | ((u32)'p'<<16) | ((u32)'a'<<24);
- input[1] = ((u32)'n') | ((u32)'d'<<8) | ((u32)' '<<16) | ((u32)'3'<<24);
- input[2] = ((u32)'2') | ((u32)'-'<<8) | ((u32)'b'<<16) | ((u32)'y'<<24);
- input[3] = ((u32)'t') | ((u32)'e'<<8) | ((u32)' '<<16) | ((u32)'k'<<24);
+ input[0] = ((u32)ossl_toascii('e')) | ((u32)ossl_toascii('x') << 8)
+ | ((u32)ossl_toascii('p') << 16)
+ | ((u32)ossl_toascii('a') << 24);
+ input[1] = ((u32)ossl_toascii('n')) | ((u32)ossl_toascii('d') << 8)
+ | ((u32)ossl_toascii(' ') << 16)
+ | ((u32)ossl_toascii('3') << 24);
+ input[2] = ((u32)ossl_toascii('2')) | ((u32)ossl_toascii('-') << 8)
+ | ((u32)ossl_toascii('b') << 16)
+ | ((u32)ossl_toascii('y') << 24);
+ input[3] = ((u32)ossl_toascii('t')) | ((u32)ossl_toascii('e') << 8)
+ | ((u32)ossl_toascii(' ') << 16)
+ | ((u32)ossl_toascii('k') << 24);
input[4] = key[0];
input[5] = key[1];