From e047dbe884f5288943d5ba2f8843a078d647d7ef Mon Sep 17 00:00:00 2001 From: gcontini <1121667+gcontini@users.noreply.github.com> Date: 周六, 25 4月 2020 21:01:33 +0800 Subject: [PATCH] first docker & vm detection --- src/library/hw_identifier/default_strategy.cpp | 26 +++++++++++++------------- 1 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/library/hw_identifier/default_strategy.cpp b/src/library/hw_identifier/default_strategy.cpp index a770512..2ca1aa4 100644 --- a/src/library/hw_identifier/default_strategy.cpp +++ b/src/library/hw_identifier/default_strategy.cpp @@ -13,17 +13,17 @@ namespace license { namespace hw_identifier { -static vector<LCC_API_IDENTIFICATION_STRATEGY> available_strategies() { - ExecutionEnvironment exec; - VIRTUALIZATION virtualization = exec.getVirtualization(); - vector<LCC_API_IDENTIFICATION_STRATEGY> strategy_to_try; - if (virtualization == CONTAINER) { +static vector<LCC_API_HW_IDENTIFICATION_STRATEGY> available_strategies() { + const os::ExecutionEnvironment exec; + LCC_API_VIRTUALIZATION_SUMMARY virtualization = exec.virtualization(); + vector<LCC_API_HW_IDENTIFICATION_STRATEGY> strategy_to_try; + if (virtualization == LCC_API_VIRTUALIZATION_SUMMARY::CONTAINER) { if (exec.is_docker()) { strategy_to_try = LCC_DOCKER_STRATEGIES; } else { strategy_to_try = LCC_LXC_STRATEGIES; } - } else if (virtualization == VM) { + } else if (virtualization == LCC_API_VIRTUALIZATION_SUMMARY::VM) { if (exec.is_cloud()) { strategy_to_try = LCC_CLOUD_STRATEGIES; } else { @@ -39,15 +39,15 @@ DefaultStrategy::~DefaultStrategy() {} -LCC_API_IDENTIFICATION_STRATEGY DefaultStrategy::identification_strategy() const { return STRATEGY_DEFAULT; } +LCC_API_HW_IDENTIFICATION_STRATEGY DefaultStrategy::identification_strategy() const { return STRATEGY_DEFAULT; } -FUNCTION_RETURN DefaultStrategy::identify_pc(HwIdentifier& pc_id) const { - vector<LCC_API_IDENTIFICATION_STRATEGY> strategy_to_try = available_strategies(); +FUNCTION_RETURN DefaultStrategy::generate_pc_id(HwIdentifier& pc_id) const { + vector<LCC_API_HW_IDENTIFICATION_STRATEGY> strategy_to_try = available_strategies(); FUNCTION_RETURN ret = FUNC_RET_NOT_AVAIL; for (auto it : strategy_to_try) { - LCC_API_IDENTIFICATION_STRATEGY strat_to_try = it; + LCC_API_HW_IDENTIFICATION_STRATEGY strat_to_try = it; unique_ptr<IdentificationStrategy> strategy_ptr = IdentificationStrategy::get_strategy(strat_to_try); - ret = strategy_ptr->identify_pc(pc_id); + ret = strategy_ptr->generate_pc_id(pc_id); if (ret == FUNC_RET_OK) { break; } @@ -56,11 +56,11 @@ } std::vector<HwIdentifier> DefaultStrategy::alternative_ids() const { - vector<LCC_API_IDENTIFICATION_STRATEGY> strategy_to_try = available_strategies(); + vector<LCC_API_HW_IDENTIFICATION_STRATEGY> strategy_to_try = available_strategies(); vector<HwIdentifier> identifiers; FUNCTION_RETURN ret = FUNC_RET_NOT_AVAIL; for (auto it : strategy_to_try) { - LCC_API_IDENTIFICATION_STRATEGY strat_to_try = it; + LCC_API_HW_IDENTIFICATION_STRATEGY strat_to_try = it; unique_ptr<IdentificationStrategy> strategy_ptr = IdentificationStrategy::get_strategy(strat_to_try); vector<HwIdentifier> alt_ids = strategy_ptr->alternative_ids(); identifiers.insert(alt_ids.begin(), alt_ids.end(), identifiers.end()); -- Gitblit v1.9.1