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
Standard C Library (libc, -lc)
#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
*);
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.
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
.
The UUID functions conform to the DCE 1.1 RPC specification.
This manpage can be improved.