Ruby 2.0.0p247(2013-06-27revision41674)

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

Data Structures | Macros | Typedefs | Functions
siphash.h File Reference
`#include <stdlib.h>`
Include dependency graph for siphash.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures
struct | sip_uint64_t
struct | sip_state
struct | sip_hash

## Macros
#define | uint64_t sip_uint64_t

## Typedefs
typedef struct sip_interface_st | sip_interface

## 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 *data, 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_hash24 (const uint8_t key[16], const uint8_t *data, size_t len)

## Macro Definition Documentation

#define uint64_t sip_uint64_t

Definition at line 15 of file siphash.h.

## Typedef Documentation

typedef struct sip_interface_st sip_interface

Definition at line 29 of file siphash.h.

## Function Documentation

uint64_t sip_hash24 | ( | const uint8_t | key[16],
|  | const uint8_t * | data,
|  | size_t | len
| ) |  |

Definition at line 397 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 362 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 369 of file siphash.c.

References sip_hash_final_integer(), and sip_hash_update().

void sip_hash_dump | ( | sip_hash * | h) |  |

Definition at line 382 of file siphash.c.

References int_sip_dump(), and sip_hash::state.

int sip_hash_final | ( | sip_hash * | h,
|  | uint8_t ** | digest,
|  | size_t * | len
| ) |  |

Definition at line 340 of file siphash.c.

References sip_interface_st::final, malloc, sip_hash::methods, sip_hash::state, and U64TO8_LE.

Referenced by sip_hash_digest().

int sip_hash_final_integer | ( | sip_hash * | h,
|  | uint64_t * | digest
| ) |  |

Definition at line 355 of file siphash.c.

References sip_interface_st::final, sip_hash::methods, and sip_hash::state.

Referenced by sip_hash_digest_integer().

void sip_hash_free | ( | sip_hash * | h) |  |

Definition at line 376 of file siphash.c.

References free().

sip_hash* sip_hash_init | ( | sip_hash * | h,
|  | const uint8_t | key[16],
|  | int | c,
|  | int | d
| ) |  |

Definition at line 321 of file siphash.c.

References sip_state::buflen, sip_state::c, 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().

sip_hash* sip_hash_new | ( | const uint8_t | key[16],
|  | int | c,
|  | int | d
| ) |  |

Definition at line 312 of file siphash.c.

References malloc, NULL, and sip_hash_init().

int sip_hash_update | ( | sip_hash * | h,
|  | const uint8_t * | data,
|  | size_t | len
| ) |  |

Definition at line 333 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().