diff options
Diffstat (limited to 'src/Device/Device.cpp')
-rw-r--r-- | src/Device/Device.cpp | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/Device/Device.cpp b/src/Device/Device.cpp index e4ec02a..6ef807e 100644 --- a/src/Device/Device.cpp +++ b/src/Device/Device.cpp @@ -22,7 +22,7 @@ const std::vector<std::string> Device::apIdentifiers = { const std::regex Device::apFilters("(modalias)|(power)(.*)|(subsystem)|(uevent)"); const std::regex Device::serialModeFilter("(.*)(serial-mode)"); -const std::regex Device::mtcdt3Filters("(MTCDT3AC)(.*)"); +const std::regex Device::mtcdt3HwVersionFilters("(MTCDT3AC)(.*)"); const std::regex Device::mtrFilters("(MTR-)(.*)"); const std::regex Device::storeFilters( "(.*)(mac-)(.*)|(.*)(-id)|(uuid)|(.*)(/eui)|(.*)(/" @@ -54,7 +54,8 @@ std::map<std::string, bool> Device::capabilityList = { {"supercap", false}, {"wifi", false}, {"docker", false}, - {"tpm", false}}; + {"tpm", false}, + {"userDataEncryption", false}}; std::map<std::string, std::string> Device::ethSwitchList; @@ -174,6 +175,12 @@ void Device::getSystemTreeJson(const char *dir_name) { deviceInfoList[toCamelCase(d_name)] = fileData; } else if (strcmp(d_name, "hw-version") == 0) { deviceInfoList["hardwareVersion"] = fileData; + if (regex_match(fileData, mtcdt3HwVersionFilters)) { + capabilityList["rs232"] = true; + capabilityList["rs422"] = true; + capabilityList["rs485"] = true; + capabilityList["serial"] = true; + } } else if (strcmp(d_name, "mac-eth") == 0) { deviceInfoList["macAddress"] = fileData; } else if (strcmp(d_name, "has-radio") == 0 && @@ -185,12 +192,6 @@ void Device::getSystemTreeJson(const char *dir_name) { deviceInfoList["oemString2"] = fileData; }; if (strcmp(d_name, "product-id") == 0) { - if (regex_match(fileData, mtcdt3Filters)) { - capabilityList["rs232"] = true; - capabilityList["rs422"] = true; - capabilityList["rs485"] = true; - capabilityList["serial"] = true; - } if (regex_match(fileData, mtrFilters)) { capabilityList["rs232"] = true; capabilityList["serial"] = true; |