Updated: 2022/Sep/29
Please read Privacy Policy. It's for your privacy.
UUID(3) Library Functions Manual UUID(3) NAME uuid_compare, uuid_create, uuid_create_nil, uuid_equal, uuid_from_string, uuid_hash, uuid_is_nil, uuid_to_string, uuid_enc_le, uuid_dec_le, uuid_enc_be, uuid_dec_be - Universally Unique Identifier routines 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 These routines provide for the creation and manipulation of Universally Unique Identifiers (UUIDs), also referred to as Globally Unique Identifiers (GUIDs). The uuid_compare() function compares two UUIDs. It returns -1 if uuid1 precedes uuid2, 0 if they are equal, or 1 if uuid1 follows uuid2. The uuid_create() function creates a new UUID. Storage for the new UUID must be pre-allocated by the caller. The uuid_create_nil() function creates a nil-valued UUID. Storage for the new UUID must be pre-allocated by the caller. The uuid_equal() function compares two UUIDs to determine if they are equal. It returns 1 if they are equal, and 0 if they are not equal. The uuid_from_string() function parses a 36-character string representation of a UUID and converts it to binary representation. Storage for the UUID must be pre-allocated by the caller. The uuid_hash() function generates a hash value for the specified UUID. Note that the hash value is not a cryptographic hash, and should not be assumed to be unique given two different UUIDs. The uuid_is_nil() function returns 1 if the UUID is nil-valued and 0 if it is not. The uuid_to_string() function converts a UUID from binary representation to string representation. Storage for the string is dynamically allocated and returned via the str argument. 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. 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. RETURN VALUES The uuid_compare(), uuid_create(), uuid_create_nil(), uuid_equal(), uuid_from_string(), uuid_hash(), uuid_is_nil(), and uuid_to_string() functions return successful or unsuccessful completion status 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 a UUID is not valid. uuid_s_no_memory Memory could not be allocated for the operation. SEE ALSO uuidgen(1), uuidgen(2) STANDARDS The uuid_compare(), uuid_create(), uuid_create_nil(), uuid_equal(), uuid_from_string(), uuid_hash(), uuid_is_nil(), and uuid_to_string() functions are compatible with the DCE 1.1 RPC specification. HISTORY The UUID functions first appeared in NetBSD 3.0. NetBSD 10.99 April 22, 2008 NetBSD 10.99