RFC 4122 UUID functions More...
#include <stdbool.h>#include <stdint.h>#include <stdlib.h>#include <string.h>#include "byteorder.h"
 Include dependency graph for uuid.h:
 This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | uuid_t | 
| UUID layout.  More... | |
Macros | |
| #define | UUID_NODE_LEN (6U) | 
| Size of the node identifier in bytes.  | |
| #define | UUID_STR_LEN (36U) | 
| Size of a string UUID without null character.  | |
Functions | |
| void | uuid_v3 (uuid_t *uuid, const uuid_t *ns, const uint8_t *name, size_t len) | 
| Generate a version 3(md5 based) UUID from a namespace and a byte array.  More... | |
| void | uuid_v4 (uuid_t *uuid) | 
| Generate a version 4(Full random) UUID.  More... | |
| void | uuid_v5 (uuid_t *uuid, const uuid_t *ns, const uint8_t *name, size_t len) | 
| Generate a version 5(sha1 based) UUID from a namespace and a byte array.  More... | |
| static unsigned | uuid_version (const uuid_t *uuid) | 
| Retrieve the type number of a UUID.  More... | |
| static bool | uuid_equal (const uuid_t *uuid1, const uuid_t *uuid2) | 
| Compare two UUID's.  More... | |
| void | uuid_to_string (const uuid_t *uuid, char *str) | 
| Generate an UUID string from an UUID structure.  More... | |
| int | uuid_from_string (uuid_t *uuid, const char *str) | 
| Populate an UUID structure from an UUID string.  More... | |
UUID version identifiers | |
| #define | UUID_V1 (0x01) | 
| Type 1 UUID - timestamp based  | |
| #define | UUID_V2 (0x02) | 
| Type 2 UUID - DCE Security version.  | |
| #define | UUID_V3 (0x03) | 
| Type 3 UUID - Name based with MD5  | |
| #define | UUID_V4 (0x04) | 
| Type 4 UUID - Random generated  | |
| #define | UUID_V5 (0x05) | 
| Type 5 UUID - Name based with SHA1.  | |
Version part of the time_hi field | |
| #define | UUID_VERSION_MASK (0xF000) | 
Namespace IDs from RFC4122 | |
Copied from rfc4122 Appendix C  | |
| const uuid_t | uuid_namespace_dns | 
| DNS namespace UUID.  | |
| const uuid_t | uuid_namespace_url | 
| URL namespace UUID.  | |
| const uuid_t | uuid_namespace_iso | 
| ISO OID namespace UUID.  | |
| const uuid_t | uuid_namespace_x500 | 
| X.500 DN namespace UUID.  | |