From 4467a957a498b93dbcaefbad97df24b43dfbc99d Mon Sep 17 00:00:00 2001
From: gcontini <1121667+gcontini@users.noreply.github.com>
Date: 周日, 08 3月 2020 22:16:09 +0800
Subject: [PATCH] fix tests

---
 src/library/os/os.h |   62 +++++++++++++++++++++---------
 1 files changed, 43 insertions(+), 19 deletions(-)

diff --git a/src/library/os/os.h b/src/library/os/os.h
index 1269134..00abae2 100644
--- a/src/library/os/os.h
+++ b/src/library/os/os.h
@@ -2,7 +2,7 @@
  * os-dependent.hpp
  *
  *  Created on: Mar 29, 2014
- *      Author: devel
+ *
  */
 
 #ifndef OS_DEPENDENT_HPP_
@@ -14,33 +14,57 @@
 
 #include "../base/base.h"
 #include <stddef.h>
+#include <string.h>
+#include <ctype.h>
+#include <sys/types.h>
+// definition of size_t
+#include <stdlib.h>
+#ifdef __unix__
+#include <unistd.h>
 #include <stdbool.h>
-
-typedef enum {
-	NONE, VMWARE
-} VIRTUALIZATION;
+#endif
 
 typedef struct {
 	int id;
-	char description[1024];
-	unsigned char mac_address[6];
-	unsigned char ipv4_address[4];
-} AdapterInfo;
-
-typedef struct {
-	int id;
-	char device[255];
+	char device[MAX_PATH];
 	unsigned char disk_sn[8];
 	char label[255];
-	bool preferred;
+	int preferred;
 } DiskInfo;
 
-FUNCTION_RETURN getAdapterInfos(AdapterInfo * adapterInfos,
-		size_t * adapter_info_size);
-FUNCTION_RETURN getDiskInfos(DiskInfo * diskInfos, size_t * disk_info_size);
+FUNCTION_RETURN getDiskInfos(DiskInfo* diskInfos, size_t* disk_info_size);
 FUNCTION_RETURN getUserHomePath(char[MAX_PATH]);
-VIRTUALIZATION getVirtualization();
-void os_initialize();
+FUNCTION_RETURN getModuleName(char buffer[MAX_PATH]);
+FUNCTION_RETURN getMachineName(unsigned char identifier[6]);
+/**
+ * Get an identifier of the machine in an os specific way.
+ * In Linux it uses:
+ * http://stackoverflow.com/questions/328936/getting-a-unique-id-from-a-unix-like-system
+ *
+ * <ul>
+ * <li>Dbus if available</li>
+ * </ul>
+ * Can be used as a fallback in case no other methods are available.
+ * Windows:
+ * HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\ CurrentVersion\ProductId
+ * http://sowkot.blogspot.it/2008/08/generating-unique-keyfinger-print-for.html
+ * http://stackoverflow.com/questions/2842116/reliable-way-of-generating-unique-hardware-id
+ *
+ *
+ * @param identifier
+ * @return
+ */
+FUNCTION_RETURN getOsSpecificIdentifier(unsigned char identifier[6]);
+
+// FUNCTION_RETURN verifySignature(const char* stringToVerify, const char* signatureB64);
+
+#ifdef _WIN32
+#define SETENV(VAR, VAL) _putenv_s(VAR, VAL);
+#define UNSETENV(P) _putenv_s(P, "");
+#else
+#define SETENV(VAR, VAL) setenv(VAR, VAL, 1);
+#define UNSETENV(P) unsetenv(P);
+#endif
 
 #ifdef __cplusplus
 }

--
Gitblit v1.9.1