aboutsummaryrefslogtreecommitdiffstats
path: root/src/uuid.h
diff options
context:
space:
mode:
authorJosé Bollo <jose.bollo@iot.bzh>2019-07-16 15:27:29 +0200
committerJose Bollo <jose.bollo@iot.bzh>2019-07-18 15:38:02 +0200
commit6fe59e27c0640462f92133106b4d4d52d77683f9 (patch)
tree2eed6d6ebbb74eada87740539ca5d04029c26fea /src/uuid.h
parent0342cd1f15478365bad504d9398d56a03b89781a (diff)
uuid: Add module for UUID generation
This commit allow modules of afb-daemon to request UUID. This introduce an abstraction above libuuid for 3 reasons: 1. Using uuid had bad side effect inthe past because it required enought entropy at start time, leading to hanging initialisations in wait for enough entropy. 2. Solving bug SPEC-2625 will require use of UUID. 3. Porting to systems that haven't libuuid is made more easy after that. Bug-AGL: SPEC-2625 Change-Id: I27d8b611946686dea6fab250697afe9b89aac869 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'src/uuid.h')
-rw-r--r--src/uuid.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/uuid.h b/src/uuid.h
new file mode 100644
index 00000000..ee467d14
--- /dev/null
+++ b/src/uuid.h
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2016-2019 "IoT.bzh"
+ * Author: José Bollo <jose.bollo@iot.bzh>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#pragma once
+
+#define UUID_BINARY_LENGTH 16
+#define UUID_STRINGZ_LENGTH 37
+
+typedef unsigned char uuid_binary_t[UUID_BINARY_LENGTH];
+typedef char uuid_stringz_t[UUID_STRINGZ_LENGTH];
+
+void uuid_new_binary(uuid_binary_t uuid);
+void uuid_new_stringz(uuid_stringz_t uuid);