IDGEN32(9) BSD Kernel Developer's Manual IDGEN32(9)
idgen32 -- non-repeating ID generation
idgen32_init(struct idgen32_ctx *ctx);
idgen32(struct idgen32_ctx *ctx);
The idgen32() functions provide a facility to generate a stream of 32-bit
numbers that are strongly unpredictable and have a repetition cycle close
to 2^32. Such numbers are useful as protocol identifiers where there are
negative consequences to reusing an ID within a short time period, as may
happen if they are simply assigned at random.
The idgen32_init() function prepares a context structure for use.
The idgen32() function returns a new ID in host byte order. Note that
this function will never return 0 as it often has a special meaning in
The idgen32 functions were added in OpenBSD 4.4.
BSD June 4, 2013 BSD