osf1 man page for ranhashinit

Query: ranhashinit

OS: osf1

Section: 3

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

ranhash(3)						     Library Functions Manual							ranhash(3)

NAME
ranhashinit, ranhash, ranlookup - access routine for the symbol table definition file in archives
SYNOPSIS
#include <ar.h> int ranhashinit(pran, pstr, size) struct ranlib *pran; char *pstr; int size; ranhash(name) char *name; struct ranlib *ranhash(name) char *name;
DESCRIPTION
ranhashinit initializes static information for future use by ranhash and ranlookup. pran points to an array of ranlib structures. pstr points to the corresponding ranlib string table (these are only used by ranlookup). size is the size of the hash table and should be a power of 2. If the size isn't a power of 2, a 1 is returned; otherwise, a 0 is returned. ranhash returns a hash number given a name. It uses a multiplicative hashing algorithm and the size argument to ranhashinit. ranlookup looks up name in the ranlib table specified by ranhashinit. It uses the ranhash routine as a starting point. Then, it does a rehash from there. This routine returns a pointer to a valid ranlib entry on a match. If no matches are found (the "emptiness" can be inferred if the ran_off field is zero), the empty ranlib structure hash table should be sparse. This routine does not expect to run out of places to look in the table. For example, if you collide on all entries in the table, an error is printed tostderr and a zero is returned.
AUTHOR
Mark I. Himelstein
RELATED INFORMATION
ar(1) delim off ranhash(3)
Related Man Pages
ranlib(1) - opensolaris
ranlib(1) - bsd
ranlib(5) - netbsd
ranhash(3) - osf1
ldfcn(4) - osf1
Similar Topics in the Unix Linux Community
SCO Openserver 5.0.7 Process table overflow
Return a hash table from a sub routine