Don't lie about array parameters

Passing an array as a parameter to a function in C doesn't work, they decay
into pointer.  Defining them is pointless and error prone, so just
declare a pointer.
This commit is contained in:
Tristan Le Guern
2015-09-25 22:12:52 +02:00
committed by Dmitry Podgorny
parent cd92f69c76
commit ed5f982312
2 changed files with 15 additions and 15 deletions

View File

@@ -34,7 +34,7 @@ static const uint8_t ipad = 0x36;
static const uint8_t opad = 0x5C; static const uint8_t opad = 0x5C;
static void SHA1(const uint8_t* data, size_t len, static void SHA1(const uint8_t* data, size_t len,
uint8_t digest[SHA1_DIGEST_SIZE]) uint8_t * digest)
{ {
SHA1_CTX ctx; SHA1_CTX ctx;
SHA1_Init(&ctx); SHA1_Init(&ctx);
@@ -44,7 +44,7 @@ static void SHA1(const uint8_t* data, size_t len,
static void HMAC_SHA1(const uint8_t *key, size_t key_len, static void HMAC_SHA1(const uint8_t *key, size_t key_len,
const uint8_t *text, size_t len, const uint8_t *text, size_t len,
uint8_t digest[SHA1_DIGEST_SIZE]) uint8_t *digest)
{ {
uint8_t key_pad[BLOCK_SIZE]; uint8_t key_pad[BLOCK_SIZE];
uint8_t key_ipad[BLOCK_SIZE]; uint8_t key_ipad[BLOCK_SIZE];
@@ -79,7 +79,7 @@ static void HMAC_SHA1(const uint8_t *key, size_t key_len,
static void SCRAM_SHA1_Hi(const uint8_t *text, size_t len, static void SCRAM_SHA1_Hi(const uint8_t *text, size_t len,
const uint8_t *salt, size_t salt_len, uint32_t i, const uint8_t *salt, size_t salt_len, uint32_t i,
uint8_t digest[SHA1_DIGEST_SIZE]) uint8_t *digest)
{ {
int j, k; int j, k;
uint8_t tmp[128]; uint8_t tmp[128];
@@ -111,7 +111,7 @@ static void SCRAM_SHA1_Hi(const uint8_t *text, size_t len,
void SCRAM_SHA1_ClientKey(const uint8_t *password, size_t len, void SCRAM_SHA1_ClientKey(const uint8_t *password, size_t len,
const uint8_t *salt, size_t salt_len, uint32_t i, const uint8_t *salt, size_t salt_len, uint32_t i,
uint8_t key[SHA1_DIGEST_SIZE]) uint8_t *key)
{ {
uint8_t salted[SHA1_DIGEST_SIZE]; uint8_t salted[SHA1_DIGEST_SIZE];
@@ -122,9 +122,9 @@ void SCRAM_SHA1_ClientKey(const uint8_t *password, size_t len,
strlen("Client Key"), key); strlen("Client Key"), key);
} }
void SCRAM_SHA1_ClientSignature(const uint8_t ClientKey[SHA1_DIGEST_SIZE], void SCRAM_SHA1_ClientSignature(const uint8_t *ClientKey,
const uint8_t *AuthMessage, size_t len, const uint8_t *AuthMessage, size_t len,
uint8_t sign[SHA1_DIGEST_SIZE]) uint8_t *sign)
{ {
uint8_t stored[SHA1_DIGEST_SIZE]; uint8_t stored[SHA1_DIGEST_SIZE];
@@ -132,9 +132,9 @@ void SCRAM_SHA1_ClientSignature(const uint8_t ClientKey[SHA1_DIGEST_SIZE],
HMAC_SHA1(stored, SHA1_DIGEST_SIZE, AuthMessage, len, sign); HMAC_SHA1(stored, SHA1_DIGEST_SIZE, AuthMessage, len, sign);
} }
void SCRAM_SHA1_ClientProof(const uint8_t ClientKey[SHA1_DIGEST_SIZE], void SCRAM_SHA1_ClientProof(const uint8_t *ClientKey,
const uint8_t ClientSignature[SHA1_DIGEST_SIZE], const uint8_t *ClientSignature,
uint8_t proof[SHA1_DIGEST_SIZE]) uint8_t *proof)
{ {
int i; int i;
for (i = 0; i < SHA1_DIGEST_SIZE; i++) { for (i = 0; i < SHA1_DIGEST_SIZE; i++) {

View File

@@ -23,14 +23,14 @@
void SCRAM_SHA1_ClientKey(const uint8_t *password, size_t len, void SCRAM_SHA1_ClientKey(const uint8_t *password, size_t len,
const uint8_t *salt, size_t salt_len, uint32_t i, const uint8_t *salt, size_t salt_len, uint32_t i,
uint8_t key[SHA1_DIGEST_SIZE]); uint8_t *key);
void SCRAM_SHA1_ClientSignature(const uint8_t ClientKey[SHA1_DIGEST_SIZE], void SCRAM_SHA1_ClientSignature(const uint8_t *ClientKey,
const uint8_t *AuthMessage, size_t len, const uint8_t *AuthMessage, size_t len,
uint8_t sign[SHA1_DIGEST_SIZE]); uint8_t *sign);
void SCRAM_SHA1_ClientProof(const uint8_t ClientKey[SHA1_DIGEST_SIZE], void SCRAM_SHA1_ClientProof(const uint8_t *ClientKey,
const uint8_t ClientSignature[SHA1_DIGEST_SIZE], const uint8_t *ClientSignature,
uint8_t proof[SHA1_DIGEST_SIZE]); uint8_t *proof);
#endif /* __LIBSTROPHE_SCRAM_H__ */ #endif /* __LIBSTROPHE_SCRAM_H__ */