NAME
uuid_compare,
uuid_create,
uuid_create_nil, uuid_equal,
uuid_from_string, uuid_hash,
uuid_is_nil, uuid_to_string
— DCE 1.1 compliant UUID
functions
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include
<uuid.h>
int32_t
uuid_compare(const
uuid_t *uuid1, const
uuid_t *uuid2, uint32_t
*status);
void
uuid_create(uuid_t
*uuid, uint32_t
*status);
void
uuid_create_nil(uuid_t
*uuid, uint32_t
*status);
int32_t
uuid_equal(const
uuid_t *uuid1, const
uuid_t *uuid2, uint32_t
*status);
void
uuid_from_string(const
char *str, uuid_t
*uuid, uint32_t
*status);
uint16_t
uuid_hash(const
uuid_t *uuid, uint32_t
*status);
int32_t
uuid_is_nil(const
uuid_t *uuid, uint32_t
*status);
void
uuid_to_string(const
uuid_t *uuid, char
**str, uint32_t
*status);
void
uuid_enc_le(void
*buf, const uuid_t
*uuid);
void
uuid_dec_le(const
void *buf, uuid_t
*);
void
uuid_enc_be(void
*buf, const uuid_t
*uuid);
void
uuid_dec_be(const
void *buf, uuid_t
*);
DESCRIPTION
The family of DCE 1.1 compliant UUID functions allow applications
to operate on universally unique identifiers, or UUIDs. The
uuid_create()
and
uuid_create_nil()
functions create UUIDs. To convert from the binary representation to the
string representation or vice versa, use
uuid_to_string() or
uuid_from_string()
respectively.
The
uuid_to_string()
function set *str to be a pointer to a buffer
sufficiently large to hold the string. This pointer should be passed to
free(3) to release the allocated storage when it is no longer
needed.
The
uuid_enc_le()
and
uuid_enc_be()
functions encode a binary representation of a UUID into an octet stream in
little-endian and big-endian byte-order, respectively. The destination
buffer must be pre-allocated by the caller, and must be large enough to hold
the 16-octet binary UUID. These routines are not part of the DCE RPC API.
They are provided for convenience.
The
uuid_dec_le()
and
uuid_dec_be()
functions decode a UUID from an octet stream in little-endian and big-endian
byte-order, respectively. These routines are not part of the DCE RPC API.
They are provided for convenience.
The
uuid_compare()
and
uuid_equal()
functions compare two UUIDs for equality. UUIDs are equal if pointers
a and b are equal or both
NULL, or if the structures a
and b point to are equal.
uuid_compare() returns 0 if the UUIDs are equal, -1
if a is less than b, and 1 if
a is greater than b.
uuid_equal() returns 1 if the UUIDs are equal, 0 if
they are not equal.
The
uuid_is_nil()
function compares a UUID to NULL. The function
returns 1 if u is NULL or if
the UUID consists of all zeros, and zero otherwise.
The
uuid_hash()
function returns a 16-bit hash value for the specified UUID.
RETURN VALUES
The successful or unsuccessful completion of the function is returned in the status argument. Possible values are:
uuid_s_ok- The function completed successfully.
uuid_s_bad_version- The UUID does not have a known version.
uuid_s_invalid_string_uuid- The string representation of an UUID is not valid.
uuid_s_no_memory- The function can not allocate memory to store an UUID representation.
uuid_compare(),
uuid_equal(), uuid_is_nil(),
and uuid_hash() always set
status to uuid_s_ok.
SEE ALSO
STANDARDS
The UUID functions conform to the DCE 1.1 RPC specification.
BUGS
This manpage can be improved.