diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2016-07-27 11:30:05 +0200 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2016-08-02 02:55:42 +0200 |
commit | 2b8dd0d6ee4309d74efb7d4f28086e91381fd72a (patch) | |
tree | 88b4323468ad47112bdbea30532f7fe11f590d03 /src/tools/curve25519.h | |
parent | timers: use more clear pow macro (diff) | |
download | wireguard-monolithic-historical-2b8dd0d6ee4309d74efb7d4f28086e91381fd72a.tar.xz wireguard-monolithic-historical-2b8dd0d6ee4309d74efb7d4f28086e91381fd72a.zip |
c: specify static array size in function params
The C standard states:
A declaration of a parameter as ``array of type'' shall be adjusted to ``qualified pointer to
type'', where the type qualifiers (if any) are those specified within the [ and ] of the
array type derivation. If the keyword static also appears within the [ and ] of the
array type derivation, then for each call to the function, the value of the corresponding
actual argument shall provide access to the first element of an array with at least as many
elements as specified by the size expression.
By changing void func(int array[4]) to void func(int array[static 4]),
we automatically get the compiler checking argument sizes for us, which
is quite nice.
Diffstat (limited to 'src/tools/curve25519.h')
-rw-r--r-- | src/tools/curve25519.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/tools/curve25519.h b/src/tools/curve25519.h index 3c1404a..0be59b7 100644 --- a/src/tools/curve25519.h +++ b/src/tools/curve25519.h @@ -10,9 +10,9 @@ enum curve25519_lengths { CURVE25519_POINT_SIZE = 32, }; -void curve25519(uint8_t *mypublic, const uint8_t *secret, const uint8_t *basepoint); -void curve25519_generate_public(uint8_t *pub, const uint8_t *secret); -static inline void curve25519_normalize_secret(uint8_t secret[CURVE25519_POINT_SIZE]) +void curve25519(uint8_t mypublic[static CURVE25519_POINT_SIZE], const uint8_t secret[static CURVE25519_POINT_SIZE], const uint8_t basepoint[static CURVE25519_POINT_SIZE]); +void curve25519_generate_public(uint8_t pub[static CURVE25519_POINT_SIZE], const uint8_t secret[static CURVE25519_POINT_SIZE]); +static inline void curve25519_normalize_secret(uint8_t secret[static CURVE25519_POINT_SIZE]) { secret[0] &= 248; secret[31] &= 127; |