/src/botan/build/include/botan/internal/poly_dbl.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | * (C) 2017 Jack Lloyd |
3 | | * |
4 | | * Botan is released under the Simplified BSD License (see license.txt) |
5 | | */ |
6 | | |
7 | | #ifndef BOTAN_POLY_DBL_H_ |
8 | | #define BOTAN_POLY_DBL_H_ |
9 | | |
10 | | #include <botan/types.h> |
11 | | |
12 | | namespace Botan { |
13 | | |
14 | | /** |
15 | | * Polynomial doubling in GF(2^n) |
16 | | */ |
17 | | void BOTAN_TEST_API poly_double_n(uint8_t out[], const uint8_t in[], size_t n); |
18 | | |
19 | | /** |
20 | | * Returns true iff poly_double_n is implemented for this size. |
21 | | */ |
22 | | inline bool poly_double_supported_size(size_t n) |
23 | 0 | { |
24 | 0 | return (n == 8 || n == 16 || n == 24 || n == 32 || n == 64 || n == 128); |
25 | 0 | } |
26 | | |
27 | | inline void poly_double_n(uint8_t buf[], size_t n) |
28 | 0 | { |
29 | 0 | return poly_double_n(buf, buf, n); |
30 | 0 | } |
31 | | |
32 | | /* |
33 | | * Little endian convention - used for XTS |
34 | | */ |
35 | | void BOTAN_TEST_API poly_double_n_le(uint8_t out[], const uint8_t in[], size_t n); |
36 | | |
37 | | } |
38 | | |
39 | | #endif |