From 27e8dc084aebdb6d71c67fd2d2000e17f072b7a9 Mon Sep 17 00:00:00 2001
From: Gabriele Contini <contini.mailing@gmail.com>
Date: 周日, 09 2月 2020 05:13:24 +0800
Subject: [PATCH] minor fix

---
 src/library/pc_identifier/pc_identifier.hpp |   20 +++++++++++++-------
 1 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/src/library/pc_identifier/pc_identifier.hpp b/src/library/pc_identifier/pc_identifier.hpp
index f3587bb..81957c2 100644
--- a/src/library/pc_identifier/pc_identifier.hpp
+++ b/src/library/pc_identifier/pc_identifier.hpp
@@ -8,19 +8,23 @@
 #ifndef SRC_LIBRARY_PC_IDENTIFIER_PC_IDENTIFIER_HPP_
 #define SRC_LIBRARY_PC_IDENTIFIER_PC_IDENTIFIER_HPP_
 
-#include <bits/stdint-uintn.h>
 #include <array>
 #include <iostream>
 #include <string>
 
+#include <licensecc_properties.h>
 #include "../../../include/licensecc/datatypes.h"
 #include "../os/execution_environment.hpp"
+#include "../os/cpu_info.hpp"
 
 namespace license {
+namespace pc_identifier {
+
+#define PC_IDENTIFIER_PROPRIETARY_DATA 8
 
 /**
  * data[0]
- * bit 7 = 0 if pc id is being generated 1 if it is included in a license.
+ * bit 7 = 0 if pc id is being generated 1 if it is coming from an issued license.
  *
  * if bit 7 = 0
  * bit 6 = environment variable was used to generate pc_id
@@ -33,25 +37,26 @@
  * bit 6 = 1 enable magic file/registry key
  * ----
  * data[1] bit 7-6-5 define identification strategy.
- * data[1] bits 4-0 and data[1-5] are pc identifier proprietary strategy data.
+ * data[1] bits 4-0, data[2-8] are pc identifier proprietary strategy data.
  */
 
 class PcIdentifier {
 private:
-	std::array<uint8_t, 6> m_data = {};
+	std::array<uint8_t, PC_IDENTIFIER_PROPRIETARY_DATA + 1> m_data = {};
 
 public:
 	PcIdentifier();
 	PcIdentifier(const std::string &param);
 	virtual ~PcIdentifier();
 	PcIdentifier(const PcIdentifier &other);
-	void set_identification_strategy(IDENTIFICATION_STRATEGY strategy);
-	IDENTIFICATION_STRATEGY get_identification_strategy() const;
+	void set_identification_strategy(LCC_API_IDENTIFICATION_STRATEGY strategy);
+	LCC_API_IDENTIFICATION_STRATEGY get_identification_strategy() const;
 	void set_use_environment_var(bool use_env_var);
 	void set_virtual_environment(VIRTUALIZATION virtualization);
 	void set_virtualization(VIRTUALIZATION_DETAIL virtualization_detail);
 	void set_cloud_provider(CLOUD_PROVIDER cloud_provider);
-	void set_data(const std::array<uint8_t, 6> &data);
+	void set_data(const std::array<uint8_t, PC_IDENTIFIER_PROPRIETARY_DATA> &data);
+	bool data_match(const std::array<uint8_t, PC_IDENTIFIER_PROPRIETARY_DATA> &data) const;
 	std::string print() const;
 	friend std::ostream &operator<<(std::ostream &output, const PcIdentifier &d) {
 		output << d.print();
@@ -59,6 +64,7 @@
 	};
 };
 
+}  // namespace pc_identifier
 } /* namespace license */
 
 #endif /* SRC_LIBRARY_PC_IDENTIFIER_PC_IDENTIFIER_HPP_ */

--
Gitblit v1.9.1