From 8af6b12ee8716d2004d13bbfc81281953975b466 Mon Sep 17 00:00:00 2001 From: open-license-manager <rillf@maildrop.cc> Date: 周一, 04 8月 2014 00:15:33 +0800 Subject: [PATCH] new identifier strategy (to be reverted --- src/library/pc-identifiers.c | 22 +++++++++++++++++----- 1 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/library/pc-identifiers.c b/src/library/pc-identifiers.c index e674d77..07a362a 100644 --- a/src/library/pc-identifiers.c +++ b/src/library/pc-identifiers.c @@ -13,6 +13,14 @@ #include "base/base64.h" #include <valgrind/memcheck.h> +FUNCTION_RETURN generate_ethernet_pc_id(PcIdentifier * identifiers, + unsigned int * num_identifiers, bool use_mac); +static void encodeStrategy(PcIdentifier * identifier, + IDENTIFICATION_STRATEGY strategy); +static FUNCTION_RETURN generate_platform_specific_pc_id( + PcIdentifier * identifiers, unsigned int * num_identifiers); + + static FUNCTION_RETURN generate_default_pc_id(PcIdentifier * identifiers, unsigned int * num_identifiers) { size_t adapter_num, disk_num, plat_spec_id; @@ -64,18 +72,20 @@ identifiers[current_identifier][k] = diskInfos[i].disk_sn[k + 2] ^ adapterInfos[j].mac_address[k + 2]; } - encodeStrategy(identifiers[current_identifier], DEFAULT); + encodeStrategy(&identifiers[current_identifier], DEFAULT); current_identifier++; } } free(diskInfos); free(adapterInfos); } else if (result_adapterInfos == OK) { + i=defined_identifiers-current_identifier; return generate_ethernet_pc_id(&identifiers[current_identifier], - defined_identifiers-current_identifier, true); + &i, true); } else if (result_diskinfos == OK) { + i=defined_identifiers-current_identifier; return generate_disk_pc_id(&identifiers[current_identifier], - defined_identifiers-current_identifier, false); + &i, false); } return OK; @@ -84,12 +94,14 @@ static void encodeStrategy(PcIdentifier * identifier, IDENTIFICATION_STRATEGY strategy) { unsigned char strategy_num = strategy << 5; - identifier[0] = (identifier[0] & 15) | strategy_num; + identifier[0][0] = (identifier[0][0] & 15) + + ++ | strategy_num; } static FUNCTION_RETURN generate_platform_specific_pc_id( - PcIdentifier * identifiers, unsigned int * num_identifiers) { + * identifiers, unsigned int * num_identifiers) { } -- Gitblit v1.9.1