Ruby
2.5.0dev(2017-10-22revision60238)
|
Go to the source code of this file.
Data Structures | |
struct | sip_interface_st |
Macros | |
#define | SIP_HASH_STREAMING 1 |
#define | LITTLE_ENDIAN __LITTLE_ENDIAN |
#define | BIG_ENDIAN __BIG_ENDIAN |
#define | lo u32[0] |
#define | hi u32[1] |
#define | UNALIGNED_WORD_ACCESS 0 |
#define | U8TO32_LE(p) |
#define | U32TO8_LE(p, v) |
#define | U8TO64_LE(p) u8to64_le(p) |
#define | U64TO8_LE(p, v) u64to8_le(p, v) |
#define | ROTL64_TO(v, s) |
#define | ADD64_TO(v, s) add64_to(&(v), (s)) |
#define | XOR64_TO(v, s) xor64_to(&(v), (s)) |
#define | XOR64_INT(v, x) ((v).lo ^= (x)) |
#define | sip_init_state sip_init_state_bin.u64 |
#define | SIP_COMPRESS(v0, v1, v2, v3) |
#define | SIP_ROUND(m, v0, v1, v2, v3) |
#define | OR_BYTE(n) |
Functions | |
sip_hash * | sip_hash_new (const uint8_t key[16], int c, int d) |
sip_hash * | sip_hash_init (sip_hash *h, const uint8_t key[16], int c, int d) |
int | sip_hash_update (sip_hash *h, const uint8_t *msg, size_t len) |
int | sip_hash_final (sip_hash *h, uint8_t **digest, size_t *len) |
int | sip_hash_final_integer (sip_hash *h, uint64_t *digest) |
int | sip_hash_digest (sip_hash *h, const uint8_t *data, size_t data_len, uint8_t **digest, size_t *digest_len) |
int | sip_hash_digest_integer (sip_hash *h, const uint8_t *data, size_t data_len, uint64_t *digest) |
void | sip_hash_free (sip_hash *h) |
void | sip_hash_dump (sip_hash *h) |
uint64_t | sip_hash13 (const uint8_t key[16], const uint8_t *data, size_t len) |
#define OR_BYTE | ( | n | ) |
Referenced by sip_hash13().
#define ROTL64_TO | ( | v, | |
s | |||
) |
#define SIP_COMPRESS | ( | v0, | |
v1, | |||
v2, | |||
v3 | |||
) |
Definition at line 158 of file siphash.c.
Referenced by sip_hash13().
#define sip_init_state sip_init_state_bin.u64 |
Definition at line 138 of file siphash.c.
Referenced by sip_hash13().
#define SIP_ROUND | ( | m, | |
v0, | |||
v1, | |||
v2, | |||
v3 | |||
) |
Definition at line 389 of file siphash.c.
Referenced by sip_hash13().
#define U32TO8_LE | ( | p, | |
v | |||
) |
#define U64TO8_LE | ( | p, | |
v | |||
) | u64to8_le(p, v) |
Definition at line 83 of file siphash.c.
Referenced by sip_hash_final().
#define U8TO32_LE | ( | p | ) |
#define U8TO64_LE | ( | p | ) | u8to64_le(p) |
Definition at line 73 of file siphash.c.
Referenced by sip_hash13().
#define XOR64_INT | ( | v, | |
x | |||
) | ((v).lo ^= (x)) |
Definition at line 131 of file siphash.c.
Referenced by sip_hash13().
#define XOR64_TO | ( | v, | |
s | |||
) | xor64_to(&(v), (s)) |
Definition at line 122 of file siphash.c.
Referenced by sip_hash13().
Definition at line 397 of file siphash.c.
References last, OR_BYTE, SIP_COMPRESS, sip_init_state, SIP_ROUND, U8TO64_LE, XOR64_INT, and XOR64_TO.
int sip_hash_digest | ( | sip_hash * | h, |
const uint8_t * | data, | ||
size_t | data_len, | ||
uint8_t ** | digest, | ||
size_t * | digest_len | ||
) |
Definition at line 363 of file siphash.c.
References sip_hash_final(), and sip_hash_update().
int sip_hash_digest_integer | ( | sip_hash * | h, |
const uint8_t * | data, | ||
size_t | data_len, | ||
uint64_t * | digest | ||
) |
Definition at line 370 of file siphash.c.
References sip_hash_final_integer(), and sip_hash_update().
Definition at line 341 of file siphash.c.
References sip_interface_st::final, malloc, sip_hash::methods, sip_hash::state, and U64TO8_LE.
Referenced by sip_hash_digest().
Definition at line 356 of file siphash.c.
References sip_interface_st::final, sip_hash::methods, and sip_hash::state.
Referenced by sip_hash_digest_integer().
Definition at line 322 of file siphash.c.
References sip_state::buflen, sip_state::c, sip_state::d, sip_hash::methods, sip_state::msglen_byte, and sip_hash::state.
Referenced by sip_hash_new().
Definition at line 313 of file siphash.c.
References malloc, NULL, and sip_hash_init().
Definition at line 334 of file siphash.c.
Referenced by sip_hash_digest(), and sip_hash_digest_integer().
char bin[32] |
Definition at line 135 of file siphash.c.
Referenced by st_insert(), st_insert2(), st_lookup(), st_shift(), and st_update().