Man page - murmurhash(3)

Packages contains this manual

Manual

LIBMURMURHASH

NAME
SYNOPSIS
Deprecated API
DESCRIPTION
EXAMPLE
AUTHORS
BUGS
Reporting Bugs

NAME

libmurmurhash - non-cryptographic hash functions

SYNOPSIS

#include <murmurhash.h>

void lmmh_x86_32(const void * addr , unsigned int len , uint32_t seed , uint32_t out [1]);
void lmmh_x86_128(const void *
addr , unsigned int len , uint32_t seed , uint32_t out [4]);
void lmmh_x64_128(const void *
addr , unsigned int len , uint32_t seed , uint64_t out [2]);

Deprecated API

void MurmurHash3_x86_32(const void * data , int len , uint32_t seed , void * out );
void MurmurHash3_x86_128(const void *
data , int len , uint32_t seed , void * out );
void MurmurHash3_x64_128(const void *
data , int len , uint32_t seed , void * out );

DESCRIPTION

LibMurmurHash provides the three variants of MurmurHash3 from the
original source. The first parameter addr specifies the beginning of
the data to be hashed in memory. The second parameter len gives the
number of bytes to be hashed. The third parameter seed can be used to
compute an alternative hash on the same data. Pass the location of the
hash via the out parameter.

EXAMPLE

Compute the hash of length bytes starting from data and print the
32-bit sized hash value.

uint32_t hash;
lmmh_x86_32(data, length, 0, &hash);
printf("%" PRIx32 "", hash);

Do the same, but with a wider hash.

uint64_t widehash[2];
lmmh_x64_128(data, length, 0, widehash);
printf("%" PRIx64 "%" PRIx64 "", widehash[0], widehash[1]);

AUTHORS

MurmurHash was created by Austin Appleby. PMurHash was written by Shane Day. Fabian KlΓΆtzl created libmurmurhash. All code is dedicated to the public domain.

BUGS

The old API is problematic in that a negative length remains unchecked and the output parameter has very specific alignment requirements. Furthermore, the order of bytes in the hash may differ across architectures.

Reporting Bugs

Please file a bug on GitHub <github.com/kloetzl/libmurmurhash> or send me a mail <fabian-libmurmurhash@kloetzl.info>.