uuid_generate,  uuid_generate_random, uuid_generate_time -
       create a new unique UUID value


SYNOPSIS

       #include <uuid/uuid.h>

       void uuid_generate(uuid_t out);
       void uuid_generate_random(uuid_t out);
       void uuid_generate_time(uuid_t out);


DESCRIPTION

       The  uuid_generate  function  creates  a  new  universally
       unique  identifier  (UUID).   The  uuid  will be generated
       based on high-quality  randomness  from  /dev/urandom,  if
       available.   If  it  is  not available, then uuid_generate
       will use an alternative algorithm which uses  the  current
       time,  the  local ethernet MAC address (if available), and
       random data generated using a pseudo-random generator.

       The uuid_generate_random function forces the  use  of  the
       all-random UUID format, even if a high-quality random num­
       ber generator (i.e., /dev/urandom) is  not  available,  in
       which  case  a pseudo-random generator will be subsituted.
       Note that the use of a pseudo-random generator may compro­
       mise the uniqueness of UUID's generated in this fashion.

       The  uuid_generate_time  function  forces  the  use of the
       alternative algorithm which uses the current time and  the
       local ethernet MAC address (if available).  This algorithm
       used to be the default one  used  to  generate  UUID,  but
       because  of  the  use  of the ethernet MAC address, it can
       leak information about when and where the UUID was  gener­
       ated.   This  can  cause privacy problems in some applica­
       tions, so the uuid_generate function only uses this  algo­
       rithm if a high-quality source of randomness is not avail­
       able.

       The UUID is 16 bytes (128 bits) long, which gives approxi­
       mately  3.4x10^38  unique  values (there are approximately
       10^80 elemntary particles in  the  universe  according  to
       Carl Sagan's Cosmos).  The new UUID can reasonably be con­
       sidered unique among all UUIDs created on the  local  sys­
       tem,  and among UUIDs created on other systems in the past
       and in the future.


RETURN VALUE

       The newly created UUID is returned in the memory  location
       pointed to by out.


CONFORMING TO

       OSF DCE 1.1

       uuid_generate was written by Theodore Y. Ts'o for the ext2
       filesystem utilties.


AVAILABILITY

       uuid_generate is part of libuuid from the e2fsprogs  pack­
       age   and   is   available  from  http://e2fsprogs.source­
       forge.net.


SEE ALSO

       libuuid(3), uuid_clear(3), uuid_compare(3),  uuid_copy(3),
       uuidgen(1),  uuid_is_null(3), uuid_parse(3), uuid_time(3),
       uuid_unparse(3)


Man(1) output converted with man2html