unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (NetBSD-2.0)
Page:
Section:
Apropos / Subsearch:
optional field

HASH(9)                  BSD Kernel Developer's Manual                 HASH(9)

NAME
     hash, hash32_buf, hash32_str, hash32_strn -- kernel hash functions

SYNOPSIS
     #include <&lt;sys/types.h>&gt;
     #include <&lt;sys/hash.h>&gt;

     uint32_t
     hash32_buf(const void *buf, size_t len, uint32_t ihash);

     uint32_t
     hash32_str(const void *buf, uint32_t ihash);

     uint32_t
     hash32_strn(const void *buf, size_t len, uint32_t ihash);

DESCRIPTION
     The hash functions returns a hash of the given buffer.

     The hash32_buf() function returns a 32 bit hash of buf, which is len
     bytes long, seeded with an initial hash of ihash (which is usually
     HASH32_BUF_INIT).  This function may use a different algorithm to
     hash32_str() and hash32_strn().

     The hash32_str() function returns a 32 bit hash of buf, which is a NUL
     terminated ASCII string, seeded with an initial hash of ihash (which is
     usually HASH32_STR_INIT).  This function must use the same algorithm as
     hash32_strn(), so that the same data returns the same hash.

     The hash32_strn() function returns a 32 bit hash of buf, which is a NUL
     terminated ASCII string, up to a maximum of len bytes, seeded with an
     initial hash of ihash (which is usually HASH32_STR_INIT).  This function
     must use the same algorithm as hash32_str(), so that the same data
     returns the same hash.

     The ihash parameter is provided to allow for incremental hashing by
     allowing successive calls to use a previous hash value.

RETURN VALUES
     The hash32_* functions return a 32 bit hash of the provided buffer.

HISTORY
     The kernel hashing API first appeared in NetBSD 1.6.

BSD                            December 5, 2001                            BSD