diff options
Diffstat (limited to 'security/nss/lib/freebl/chacha20.h')
-rw-r--r-- | security/nss/lib/freebl/chacha20.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/security/nss/lib/freebl/chacha20.h b/security/nss/lib/freebl/chacha20.h new file mode 100644 index 000000000..7e396fa8c --- /dev/null +++ b/security/nss/lib/freebl/chacha20.h @@ -0,0 +1,26 @@ +/* + * chacha20.h - header file for ChaCha20 implementation. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#ifndef FREEBL_CHACHA20_H_ +#define FREEBL_CHACHA20_H_ + +#if defined(_MSC_VER) && _MSC_VER < 1600 +#include "prtypes.h" +typedef PRUint32 uint32_t; +typedef PRUint64 uint64_t; +#else +#include <stdint.h> +#endif + +/* ChaCha20XOR encrypts |inLen| bytes from |in| with the given key and + * nonce and writes the result to |out|, which may be equal to |in|. The + * initial block counter is specified by |counter|. */ +extern void ChaCha20XOR(unsigned char *out, const unsigned char *in, + unsigned int inLen, const unsigned char key[32], + const unsigned char nonce[12], uint32_t counter); + +#endif /* FREEBL_CHACHA20_H_ */ |