| OLD | NEW |
| 1 /* | 1 /* |
| 2 * chacha20.h - header file for ChaCha20 implementation. | 2 * chacha20.h - header file for ChaCha20 implementation. |
| 3 * | 3 * |
| 4 * This Source Code Form is subject to the terms of the Mozilla Public | 4 * This Source Code Form is subject to the terms of the Mozilla Public |
| 5 * License, v. 2.0. If a copy of the MPL was not distributed with this | 5 * License, v. 2.0. If a copy of the MPL was not distributed with this |
| 6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ | 6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
| 7 | 7 |
| 8 #ifndef FREEBL_CHACHA20_H_ | 8 #ifndef FREEBL_CHACHA20_H_ |
| 9 #define FREEBL_CHACHA20_H_ | 9 #define FREEBL_CHACHA20_H_ |
| 10 | 10 |
| 11 #if defined(_MSC_VER) && _MSC_VER < 1600 |
| 12 #include "prtypes.h" |
| 13 typedef PRUint32 uint32_t; |
| 14 typedef PRUint64 uint64_t; |
| 15 #else |
| 11 #include <stdint.h> | 16 #include <stdint.h> |
| 17 #endif |
| 12 | 18 |
| 13 /* ChaCha20XOR encrypts |inLen| bytes from |in| with the given key and | 19 /* ChaCha20XOR encrypts |inLen| bytes from |in| with the given key and |
| 14 * nonce and writes the result to |out|, which may be equal to |in|. The | 20 * nonce and writes the result to |out|, which may be equal to |in|. The |
| 15 * initial block counter is specified by |counter|. */ | 21 * initial block counter is specified by |counter|. */ |
| 16 extern void ChaCha20XOR(unsigned char *out, | 22 extern void ChaCha20XOR(unsigned char *out, const unsigned char *in, |
| 17 » » » const unsigned char *in, unsigned int inLen, | 23 unsigned int inLen, const unsigned char key[32], |
| 18 » » » const unsigned char key[32], | 24 const unsigned char nonce[12], uint32_t counter); |
| 19 » » » const unsigned char nonce[8], | |
| 20 » » » uint64_t counter); | |
| 21 | 25 |
| 22 #endif /* FREEBL_CHACHA20_H_ */ | 26 #endif /* FREEBL_CHACHA20_H_ */ |
| OLD | NEW |