aboutsummaryrefslogtreecommitdiffstats
path: root/src/guid.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/guid.h')
-rw-r--r--src/guid.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/guid.h b/src/guid.h
new file mode 100644
index 0000000..f92607d
--- /dev/null
+++ b/src/guid.h
@@ -0,0 +1,40 @@
+
+#define GUID_16(a) \
+ (((a) >> 8) & 0xff), \
+ (((a)) & 0xff),
+
+#define GUID_48(a) \
+ (((a) >> 40) & 0xff), \
+ (((a) >> 32) & 0xff), \
+ (((a) >> 24) & 0xff), \
+ (((a) >> 16) & 0xff), \
+ (((a) >> 8) & 0xff), \
+ (((a)) & 0xff),
+
+#define GUID_FLIP_32(a) \
+ (((a)) & 0xff), \
+ (((a) >> 8) & 0xff), \
+ (((a) >> 16) & 0xff), \
+ (((a) >> 24) & 0xff),
+
+#define GUID_FLIP_16(a) \
+ (((a)) & 0xff), \
+ (((a) >> 8) & 0xff),
+
+#define MAKE_GUID(a,b,c,d,e) \
+ {{ \
+ GUID_FLIP_32(0x ## a) \
+ GUID_FLIP_16(0x ## b) \
+ GUID_FLIP_16(0x ## c) \
+ GUID_16(0x ## d) \
+ GUID_48(0x ## e ## ULL) \
+ }}
+
+typedef struct
+{
+ uint8_t d[16];
+} PACKED GUID;
+
+
+
+