HP-UX Reference (11i v2 04/09) - 3 Library Functions A-M (vol 6)
e
elf_hash(3E) elf_hash(3E)
NAME
elf_hash - compute hash value
SYNOPSIS
cc [flag... ] file...
-lelf [library] ...
#include <libelf.h>
unsigned long elf_hash(const char *name);
DESCRIPTION
elf_hash computes a hash value, given a null terminated string, name. The returned hash value, h,
can be used as a bucket index, typically after computing h mod x to ensure appropriate bounds.
Hash tables may be built on one machine and used on another because
elf_hash uses unsigned arith-
metic to avoid possible differences in various machines’ signed arithmetic. Although name is shown as
char* above, elf_hash treats it as unsigned char*
to avoid sign extension differences. Using
char* eliminates type conflicts with expressions such as
elf_hash ("name").
ELF files’ symbol hash tables are computed using this function (see elf_getdata (3E) and elf_xlate (3E)).
The hash value returned is guaranteed not to be the bit pattern of all ones (
˜0UL).
SEE ALSO
elf(3E), elf_getdata(3E), elf_xlate(3E).
Section 3−−260 Hewlett-Packard Company − 1 − HP-UX 11i Version 2: September 2004