Change the generichash API to better match other NaCl APIs

i.e. give a size right after the pointer.
This commit is contained in:
Frank Denis
2013-04-21 17:32:09 -07:00
parent e56415489c
commit 9459a4b5ff
5 changed files with 17 additions and 22 deletions
@@ -7,10 +7,9 @@
#include "blake2.h"
int
crypto_generichash_blake2b(unsigned char *out, const unsigned char *in,
const unsigned char *key,
size_t outlen, unsigned long long inlen,
size_t keylen)
crypto_generichash_blake2b(unsigned char *out, size_t outlen,
const unsigned char *in, unsigned long long inlen,
const unsigned char *key, size_t keylen)
{
if (outlen <= 0U || outlen > BLAKE2B_OUTBYTES ||
keylen > BLAKE2B_KEYBYTES || inlen > UINT64_MAX) {
@@ -26,8 +25,7 @@ crypto_generichash_blake2b(unsigned char *out, const unsigned char *in,
int
crypto_generichash_blake2b_init(crypto_generichash_blake2b_state *state,
const unsigned char *key,
const size_t keylen,
const size_t outlen)
const size_t keylen, const size_t outlen)
{
if (outlen <= 0U || outlen > BLAKE2B_OUTBYTES ||
keylen > BLAKE2B_KEYBYTES) {
@@ -2,11 +2,11 @@
#include "crypto_generichash.h"
int
crypto_generichash(unsigned char *out, const unsigned char *in,
const unsigned char *key,
size_t outlen, unsigned long long inlen, size_t keylen)
crypto_generichash(unsigned char *out, size_t outlen, const unsigned char *in,
unsigned long long inlen, const unsigned char *key,
size_t keylen)
{
return crypto_generichash_blake2b(out, in, key, outlen, inlen, keylen);
return crypto_generichash_blake2b(out, outlen, in, inlen, key, keylen);
}
int
@@ -11,10 +11,9 @@
typedef crypto_generichash_blake2b_state crypto_generichash_state;
int crypto_generichash(unsigned char *out, const unsigned char *in,
const unsigned char *key,
size_t outlen, unsigned long long inlen,
size_t keylen);
int crypto_generichash(unsigned char *out, size_t outlen,
const unsigned char *in, unsigned long long inlen,
const unsigned char *key, size_t keylen);
int crypto_generichash_init(crypto_generichash_blake2b_state *state,
const unsigned char *key,
@@ -30,17 +30,14 @@ CRYPTO_ALIGN(64) typedef struct {
#ifdef __cplusplus
extern "C" {
#endif
int crypto_generichash_blake2b_ref(unsigned char *out,
int crypto_generichash_blake2b_ref(unsigned char *out, size_t outlen,
const unsigned char *in,
const unsigned char *key,
size_t outlen,
unsigned long long inlen,
size_t keylen);
const unsigned char *key, size_t keylen);
int crypto_generichash_blake2b_init(crypto_generichash_blake2b_state *state,
const unsigned char *key,
const size_t keylen,
const size_t outlen);
const size_t keylen, const size_t outlen);
int crypto_generichash_blake2b_update(crypto_generichash_blake2b_state *state,
const unsigned char *in,
+3 -2
View File
@@ -15,8 +15,9 @@ int main(void)
for(i = 0; i < MAXLEN; ++i) {
in[i]=i;
crypto_generichash(out, in, k, 1 + i % crypto_generichash_BYTES_MAX,
i, 1 + i % crypto_generichash_KEYBYTES_MAX);
crypto_generichash(out, 1 + i % crypto_generichash_BYTES_MAX,
in, i,
k, 1 + i % crypto_generichash_KEYBYTES_MAX);
for (j = 0;j < 1 + i % crypto_generichash_BYTES_MAX;++j) {
printf("%02x",(unsigned int) out[j]);
}