From 4a3dfb97ef35ae7c275d7000cb0c47b479a41457 Mon Sep 17 00:00:00 2001 From: gcontini <1121667+gcontini@users.noreply.github.com> Date: 周五, 09 10月 2020 13:41:03 +0800 Subject: [PATCH] compile with mingw --- src/library/LicenseReader.cpp | 25 ++++++++++++------------- 1 files changed, 12 insertions(+), 13 deletions(-) diff --git a/src/library/LicenseReader.cpp b/src/library/LicenseReader.cpp index 0bb9262..47f006e 100644 --- a/src/library/LicenseReader.cpp +++ b/src/library/LicenseReader.cpp @@ -22,28 +22,26 @@ #include <stdlib.h> #include <math.h> -#include <public_key.h> -#include <licensecc_properties.h> #include <licensecc/licensecc.h> #include "base/base.h" -#include "pc-identifiers.h" #include "LicenseReader.hpp" -#include "base/StringUtils.h" +#include "base/string_utils.h" #include "base/logger.h" #include "locate/LocatorFactory.hpp" namespace license { +using namespace std; FullLicenseInfo::FullLicenseInfo(const string &source, const string &product, const string &license_signature) : source(source), m_project(product), // - license_signature(license_signature) {} + license_signature(license_signature), + m_magic(0) {} LicenseReader::LicenseReader(const LicenseLocation *licenseLocation) : licenseLocation(licenseLocation) {} -EventRegistry LicenseReader::readLicenses(const string &product, vector<FullLicenseInfo> &licenseInfoOut) { - vector<string> diskFiles; +EventRegistry LicenseReader::readLicenses(const string &product, vector<FullLicenseInfo> &licenseInfoOut) const { vector<unique_ptr<locate::LocatorStrategy>> locator_strategies; FUNCTION_RETURN ret = locate::LocatorFactory::get_active_strategies(locator_strategies, licenseLocation); EventRegistry eventRegistry; @@ -54,6 +52,8 @@ } bool atLeastOneLicenseComplete = false; + const string product_up = toupper_copy(product); + const char *productNamePtr = product_up.c_str(); for (unique_ptr<locate::LocatorStrategy> &locator : locator_strategies) { vector<string> licenseLocations = locator->license_locations(eventRegistry); if (licenseLocations.size() == 0) { @@ -62,13 +62,12 @@ CSimpleIniA ini; for (auto it = licenseLocations.begin(); it != licenseLocations.end(); it++) { ini.Reset(); - string license = locator->retrieve_license_content((*it).c_str()); + const string license = locator->retrieve_license_content((*it).c_str()); const SI_Error rc = ini.LoadData(license.c_str(), license.size()); if (rc < 0) { eventRegistry.addEvent(FILE_FORMAT_NOT_RECOGNIZED, *it); continue; } - const char *productNamePtr = product.c_str(); const int sectionSize = ini.GetSectionSize(productNamePtr); if (sectionSize <= 0) { eventRegistry.addEvent(PRODUCT_NOT_LICENSED, *it); @@ -85,8 +84,8 @@ * sig = XXXXXXXXXX (mandatory, 1024) * application_data = xxxxxxxxx (optional string 16) */ - const char *license_signature = ini.GetValue(productNamePtr, "sig", nullptr); - long license_version = ini.GetLongValue(productNamePtr, "lic_ver", -1); + const char *license_signature = ini.GetValue(productNamePtr, LICENSE_SIGNATURE, nullptr); + long license_version = ini.GetLongValue(productNamePtr, LICENSE_VERSION, -1); if (license_signature != nullptr && license_version == 200) { CSimpleIniA::TNamesDepend keys; ini.GetAllKeys(productNamePtr, keys); @@ -113,13 +112,13 @@ ostringstream oss; oss << toupper_copy(trim_copy(m_project)); for (auto &it : m_limits) { - if (it.first != LICENSE_VERSION && it.first != LICENSE_SIGNATURE) { + if (it.first != LICENSE_SIGNATURE) { oss << trim_copy(it.first) << trim_copy(it.second); } } #ifdef _DEBUG - cout << "[" << oss.str() << "]" << endl; + cout << "license to sign [" << oss.str() << "]" << endl; #endif return oss.str(); } -- Gitblit v1.9.1