From 20d9fc5b5356a1054cb104ba6651b77184abf0db Mon Sep 17 00:00:00 2001 From: bigfoot547 Date: Sun, 24 Dec 2023 04:26:00 -0600 Subject: initial commit --- src/uuid/uuid.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/uuid/uuid.h (limited to 'src/uuid/uuid.h') diff --git a/src/uuid/uuid.h b/src/uuid/uuid.h new file mode 100644 index 0000000..740fa17 --- /dev/null +++ b/src/uuid/uuid.h @@ -0,0 +1,27 @@ +#ifndef L2SU_UUID_H_INCLUDED +#define L2SU_UUID_H_INCLUDED + +#include +#include + +/* A 128-bit GUID as specified by RFC 4122. + * NOTE: halves[0] is the least significant half of the GUID. */ +typedef union tag_uuid_t { + uint8_t bytes[16]; + uint64_t halves[2]; +} uuid_t; + +#define UUID_NULL_INIT { { 0 } } + +#define UUID_STRLEN (36u) +#define UUID_STRLEN_SHORT (32u) + +void l2_uuid_random(uuid_t *id); + +void l2_uuid_to_string(const uuid_t *id, char *out); +void l2_uuid_to_string_short(const uuid_t *id, char *out); + +bool l2_uuid_from_string(uuid_t *id, const char *str); +bool l2_uuid_from_string_short(uuid_t *id, const char *str); + +#endif /* include guard */ -- cgit v1.2.3-70-g09d2