Ruby
2.4.2p198(2017-09-14revision59899)
|
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_2_ROUND(m, v0, v1, v2, v3) |
#define | OR_BYTE(n) |
Variables | |
union { | |
char bin [32] | |
uint64_t u64 [4] | |
} | sip_init_state_bin = {"uespemos""modnarod""arenegyl""setybdet"} |
static const sip_interface | sip_methods |
#define hi u32[1] |
Definition at line 22 of file siphash.c.
Referenced by heap_page_allocate(), and is_pointer_to_heap().
#define lo u32[0] |
Definition at line 21 of file siphash.c.
Referenced by big2dbl(), heap_page_allocate(), and is_pointer_to_heap().
#define OR_BYTE | ( | n | ) |
Referenced by sip_hash24().
#define ROTL64_TO | ( | v, | |
s | |||
) |
#define SIP_2_ROUND | ( | m, | |
v0, | |||
v1, | |||
v2, | |||
v3 | |||
) |
Definition at line 389 of file siphash.c.
Referenced by sip_hash24().
#define SIP_COMPRESS | ( | v0, | |
v1, | |||
v2, | |||
v3 | |||
) |
Definition at line 158 of file siphash.c.
Referenced by int_sip_round(), and sip_hash24().
#define sip_init_state sip_init_state_bin.u64 |
Definition at line 138 of file siphash.c.
Referenced by int_sip_init(), and sip_hash24().
#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 int_sip_final(), int_sip_init(), int_sip_pre_update(), int_sip_update(), and sip_hash24().
#define XOR64_INT | ( | v, | |
x | |||
) | ((v).lo ^= (x)) |
Definition at line 131 of file siphash.c.
Referenced by int_sip_final(), and sip_hash24().
#define XOR64_TO | ( | v, | |
s | |||
) | xor64_to(&(v), (s)) |
Definition at line 122 of file siphash.c.
Referenced by int_sip_final(), int_sip_init(), int_sip_update_block(), and sip_hash24().
|
static |
Definition at line 293 of file siphash.c.
References sip_state::buf, sip_state::d, int_sip_pad_final_block(), int_sip_round(), int_sip_update_block(), U8TO64_LE, sip_state::v, XOR64_INT, and XOR64_TO.
Definition at line 192 of file siphash.c.
References sip_init_state, U8TO64_LE, sip_state::v, and XOR64_TO.
|
inlinestatic |
Definition at line 282 of file siphash.c.
References sip_state::buf, sip_state::buflen, and sip_state::msglen_byte.
Referenced by int_sip_final().
|
inlinestatic |
Definition at line 241 of file siphash.c.
References sip_state::buf, sip_state::buflen, and memcpy.
Referenced by int_sip_update().
|
inlinestatic |
Definition at line 224 of file siphash.c.
References sip_state::buf, sip_state::buflen, int_sip_update_block(), memcpy, and U8TO64_LE.
Referenced by int_sip_update().
|
inlinestatic |
Definition at line 206 of file siphash.c.
References SIP_COMPRESS, and sip_state::v.
Referenced by int_sip_final(), and int_sip_update_block().
Definition at line 251 of file siphash.c.
References int_sip_post_update(), int_sip_pre_update(), int_sip_update_block(), sip_state::msglen_byte, and U8TO64_LE.
Definition at line 216 of file siphash.c.
References sip_state::c, int_sip_round(), sip_state::v, and XOR64_TO.
Referenced by int_sip_final(), int_sip_pre_update(), and int_sip_update().
Definition at line 398 of file siphash.c.
References last, OR_BYTE, SIP_2_ROUND, SIP_COMPRESS, sip_init_state, 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().
void sip_hash_dump | ( | sip_hash * | h | ) |
Definition at line 383 of file siphash.c.
References int_sip_dump(), and sip_hash::state.
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_interface_st::init, sip_hash::methods, sip_state::msglen_byte, sip_methods, 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.
References sip_hash::methods, sip_hash::state, and sip_interface_st::update.
Referenced by sip_hash_digest(), and sip_hash_digest_integer().
char bin[32] |
Definition at line 135 of file siphash.c.
Referenced by find_table_bin_ind(), find_table_bin_ind_direct(), find_table_entry_ind(), init_bins(), integer_to_bnptr(), st_general_delete(), st_general_foreach(), st_get_key(), st_insert(), st_insert2(), st_lookup(), st_shift(), and st_update().
const { ... } sip_init_state_bin |
|
static |
Definition at line 151 of file siphash.c.
Referenced by sip_hash_init().
uint64_t u64[4] |
Definition at line 136 of file siphash.c.
Referenced by ffi_closure_tile_inner().