#include <stdint.h>
#include <assert.h>
#include <endian.h>
|
uint64_t | siphash24 (const void *src, unsigned long src_sz, const char key[16]) |
|
◆ _le64toh
#define _le64toh |
( |
|
x | ) |
le64toh(x) |
◆ DOUBLE_ROUND
#define DOUBLE_ROUND |
( |
|
v0, |
|
|
|
v1, |
|
|
|
v2, |
|
|
|
v3 |
|
) |
| |
Value: HALF_ROUND(v2,v1,v0,v3,17,21); \
HALF_ROUND(v0,v1,v2,v3,13,16); \
HALF_ROUND(v2,v1,v0,v3,17,21);
#define HALF_ROUND(a, b, c, d, s, t)
Definition: csiphash.c:65
◆ HALF_ROUND
#define HALF_ROUND |
( |
|
a, |
|
|
|
b, |
|
|
|
c, |
|
|
|
d, |
|
|
|
s, |
|
|
|
t |
|
) |
| |
Value:a += b; c += d; \
#define ROTATE(x, b)
Definition: csiphash.c:63
◆ ROTATE
#define ROTATE |
( |
|
x, |
|
|
|
b |
|
) |
| (uint64_t)( ((x) << (b)) | ( (x) >> (64 - (b))) ) |
◆ siphash24()
uint64_t siphash24 |
( |
const void * |
src, |
|
|
unsigned long |
src_sz, |
|
|
const char |
key[16] |
|
) |
| |