Browse Source

Use standard spelling for types, and rename local variable from "free".

No actual change, but makes it easier to reuse the code elsewhere.
Suggested by Andre Smagin
OPENBSD_5_7
tedu 9 years ago
parent
commit
6b550eb5a9
2 changed files with 25 additions and 25 deletions
  1. +8
    -8
      src/include/siphash.h
  2. +17
    -17
      src/lib/libc/hash/siphash.c

+ 8
- 8
src/include/siphash.h View File

@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $OpenBSD: siphash.h,v 1.2 2014/12/20 05:43:26 guenther Exp $
* $OpenBSD: siphash.h,v 1.3 2015/02/20 11:51:03 tedu Exp $
*/
/*
@ -52,21 +52,21 @@
#define SIPHASH_DIGEST_LENGTH 8
typedef struct _SIPHASH_CTX {
u_int64_t v[4];
u_int8_t buf[SIPHASH_BLOCK_LENGTH];
u_int32_t bytes;
uint64_t v[4];
uint8_t buf[SIPHASH_BLOCK_LENGTH];
uint32_t bytes;
} SIPHASH_CTX;
typedef struct {
u_int64_t k0;
u_int64_t k1;
uint64_t k0;
uint64_t k1;
} SIPHASH_KEY;
void SipHash_Init(SIPHASH_CTX *, const SIPHASH_KEY *);
void SipHash_Update(SIPHASH_CTX *, int, int, const void *, size_t);
u_int64_t SipHash_End(SIPHASH_CTX *, int, int);
uint64_t SipHash_End(SIPHASH_CTX *, int, int);
void SipHash_Final(void *, SIPHASH_CTX *, int, int);
u_int64_t SipHash(const SIPHASH_KEY *, int, int, const void *, size_t);
uint64_t SipHash(const SIPHASH_KEY *, int, int, const void *, size_t);
#define SipHash24_Init(_c, _k) SipHash_Init((_c), (_k))
#define SipHash24_Update(_c, _p, _l) SipHash_Update((_c), 2, 4, (_p), (_l))


+ 17
- 17
src/lib/libc/hash/siphash.c View File

@ -1,4 +1,4 @@
/* $OpenBSD: siphash.c,v 1.3 2015/02/07 05:40:59 dlg Exp $ */
/* $OpenBSD: siphash.c,v 1.4 2015/02/20 11:51:03 tedu Exp $ */
/*-
* Copyright (c) 2013 Andre Oppermann <andre@FreeBSD.org>
@ -72,8 +72,8 @@ SipHash_Init(SIPHASH_CTX *ctx, const SIPHASH_KEY *key)
void
SipHash_Update(SIPHASH_CTX *ctx, int rc, int rf, const void *src, size_t len)
{
const u_int8_t *ptr = src;
size_t free, used;
const uint8_t *ptr = src;
size_t left, used;
if (len == 0)
return;
@ -82,13 +82,13 @@ SipHash_Update(SIPHASH_CTX *ctx, int rc, int rf, const void *src, size_t len)
ctx->bytes += len;
if (used > 0) {
free = sizeof(ctx->buf) - used;
left = sizeof(ctx->buf) - used;
if (len >= free) {
memcpy(&ctx->buf[used], ptr, free);
if (len >= left) {
memcpy(&ctx->buf[used], ptr, left);
SipHash_CRounds(ctx, rc);
len -= free;
ptr += free;
len -= left;
ptr += left;
} else {
memcpy(&ctx->buf[used], ptr, len);
return;
@ -109,22 +109,22 @@ SipHash_Update(SIPHASH_CTX *ctx, int rc, int rf, const void *src, size_t len)
void
SipHash_Final(void *dst, SIPHASH_CTX *ctx, int rc, int rf)
{
u_int64_t r;
uint64_t r;
r = SipHash_End(ctx, rc, rf);
*(u_int64_t *)dst = htole64(r);
*(uint64_t *)dst = htole64(r);
}
u_int64_t
uint64_t
SipHash_End(SIPHASH_CTX *ctx, int rc, int rf)
{
u_int64_t r;
size_t free, used;
uint64_t r;
size_t left, used;
used = ctx->bytes % sizeof(ctx->buf);
free = sizeof(ctx->buf) - used;
memset(&ctx->buf[used], 0, free - 1);
left = sizeof(ctx->buf) - used;
memset(&ctx->buf[used], 0, left - 1);
ctx->buf[7] = ctx->bytes;
SipHash_CRounds(ctx, rc);
@ -136,7 +136,7 @@ SipHash_End(SIPHASH_CTX *ctx, int rc, int rf)
return (r);
}
u_int64_t
uint64_t
SipHash(const SIPHASH_KEY *key, int rc, int rf, const void *src, size_t len)
{
SIPHASH_CTX ctx;
@ -175,7 +175,7 @@ SipHash_Rounds(SIPHASH_CTX *ctx, int rounds)
static void
SipHash_CRounds(SIPHASH_CTX *ctx, int rounds)
{
u_int64_t m = letoh64(*(u_int64_t *)ctx->buf);
uint64_t m = le64toh(*(uint64_t *)ctx->buf);
ctx->v[3] ^= m;
SipHash_Rounds(ctx, rounds);


Loading…
Cancel
Save