Lines Matching refs:std

20      {{"hb_memory_mirror_mode", constants::VALUE_8, std::nullopt,
30 {{"hb_field_core_override", constants::VALUE_32, std::nullopt,
31 std::nullopt, std::nullopt}}}};
34 const std::string& i_vpdPath, const std::string& i_recordName, in readKeyword()
35 const std::string& i_keywordName, const bool i_onHardware, in readKeyword()
36 const std::string& i_fileToSave) in readKeyword()
45 i_vpdPath, std::make_tuple(i_recordName, i_keywordName)); in readKeyword()
49 std::string l_inventoryObjectPath( in readKeyword()
53 const std::string& l_keywordName = in readKeyword()
57 std::cerr << "Invalid keyword given." << std::endl; in readKeyword()
67 std::get_if<types::BinaryVector>(&l_keywordValue); in readKeyword()
71 const std::string& l_keywordStrValue = in readKeyword()
84 std::cout in readKeyword()
86 << std::endl; in readKeyword()
91 std::cerr in readKeyword()
95 << std::endl; in readKeyword()
104 std::cout << "Invalid data type or empty data received." in readKeyword()
105 << std::endl; in readKeyword()
108 catch (const std::exception& l_ex) in readKeyword()
111 std::cerr << "Read keyword's value failed for path: " << i_vpdPath in readKeyword()
113 << i_keywordName << ", error: " << l_ex.what() << std::endl; in readKeyword()
118 int VpdTool::dumpObject(std::string i_fruPath) const noexcept in dumpObject()
136 std::cout << "FRU [" << i_fruPath in dumpObject()
137 << "] is not present in the system" << std::endl; in dumpObject()
141 catch (std::exception& l_ex) in dumpObject()
144 std::cerr << "Dump Object failed for FRU [" << i_fruPath in dumpObject()
145 << "], Error: " << l_ex.what() << std::endl; in dumpObject()
151 void VpdTool::populateInterfaceJson(const std::string& i_inventoryObjPath, in populateInterfaceJson()
152 const std::string& i_infName, in populateInterfaceJson()
153 const std::vector<std::string>& i_propList, in populateInterfaceJson()
159 this](const std::string& i_property) { in populateInterfaceJson()
167 std::for_each(i_propList.cbegin(), i_propList.cend(), l_readProperties); in populateInterfaceJson()
177 const std::string& i_inventoryObjPath, nlohmann::json& io_fruJsonObject, in populateFruJson()
178 const std::vector<std::string>& i_interfaceList) const in populateFruJson()
184 const std::vector<std::string> l_properties = {"PrettyName"}; in populateFruJson()
185 populateInterfaceJson<std::string>(i_inventoryObjPath, in populateFruJson()
193 const std::vector<std::string> l_properties = {"LocationCode"}; in populateFruJson()
194 populateInterfaceJson<std::string>(i_inventoryObjPath, in populateFruJson()
202 const std::vector<std::string> l_properties = {"SN", "PN", "CC", in populateFruJson()
212 if (std::find(i_interfaceList.begin(), i_interfaceList.end(), in populateFruJson()
220 const std::vector<std::string> l_properties = { in populateFruJson()
223 populateInterfaceJson<std::string>(i_inventoryObjPath, in populateFruJson()
231 const std::vector<std::string> l_properties = {"MACAddress"}; in populateFruJson()
232 populateInterfaceJson<std::string>(i_inventoryObjPath, in populateFruJson()
240 const std::vector<std::string> l_properties = {"SlotType"}; in populateFruJson()
241 populateInterfaceJson<std::string>(i_inventoryObjPath, in populateFruJson()
249 const std::vector<std::string> l_properties = {"SlotNumber"}; in populateFruJson()
258 const std::vector<std::string> l_properties = {"Address", "Bus"}; in populateFruJson()
267 nlohmann::json VpdTool::getFruProperties(const std::string& i_objectPath) const in getFruProperties()
278 const std::string l_displayObjectPath = in getFruProperties()
279 (i_objectPath.find(constants::baseInventoryPath) == std::string::npos) in getFruProperties()
288 i_objectPath, std::vector<std::string>{}); in getFruProperties()
314 const std::string& i_objectPath, const std::string& i_interface, in getInventoryPropertyJson()
315 const std::string& i_propertyName) const noexcept in getInventoryPropertyJson()
326 if (const auto l_value = std::get_if<PropertyType>(&l_keyWordValue)) in getInventoryPropertyJson()
328 if constexpr (std::is_same<PropertyType, std::string>::value) in getInventoryPropertyJson()
332 else if constexpr (std::is_same<PropertyType, bool>::value) in getInventoryPropertyJson()
337 else if constexpr (std::is_same<PropertyType, in getInventoryPropertyJson()
340 const std::string& l_keywordStrValue = in getInventoryPropertyJson()
345 else if constexpr (std::is_same<PropertyType, uint32_t>::value) in getInventoryPropertyJson()
348 std::to_string(*l_value)); in getInventoryPropertyJson()
354 std::cout << "Invalid data type received." << std::endl; in getInventoryPropertyJson()
357 catch (const std::exception& l_ex) in getInventoryPropertyJson()
360 std::cerr << "Read " << i_propertyName in getInventoryPropertyJson()
362 << ", failed with exception: " << l_ex.what() << std::endl; in getInventoryPropertyJson()
388 std::cin >> l_userSelectedOption; in fixSystemVpd()
390 std::cout << std::endl << std::string(191, '=') << std::endl; in fixSystemVpd()
410 std::cout << "Exit successfully" << std::endl; in fixSystemVpd()
415 std::cout << "Provide a valid option. Retry." << std::endl; in fixSystemVpd()
423 std::string i_vpdPath, const std::string& i_recordName, in writeKeyword()
424 const std::string& i_keywordName, const std::string& i_keywordValue, in writeKeyword()
433 throw std::runtime_error("Received input is empty."); in writeKeyword()
437 std::make_tuple(i_recordName, i_keywordName, in writeKeyword()
452 std::cout << "Data updated successfully " << std::endl; in writeKeyword()
456 catch (const std::exception& l_ex) in writeKeyword()
459 std::cerr << "Write keyword's value for path: " << i_vpdPath in writeKeyword()
462 << " is failed. Exception: " << l_ex.what() << std::endl; in writeKeyword()
478 throw std::runtime_error( in getBackupRestoreCfgJsonObj()
480 std::string(INVENTORY_JSON_SYM_LINK)); in getBackupRestoreCfgJsonObj()
486 catch (const std::exception& l_ex) in getBackupRestoreCfgJsonObj()
489 std::cerr << l_ex.what() << std::endl; in getBackupRestoreCfgJsonObj()
504 std::cerr in cleanSystemVpd()
506 << std::endl; in cleanSystemVpd()
539 const std::string& l_srcRecordName = in cleanSystemVpd()
541 const std::string& l_srcKeywordName = in cleanSystemVpd()
565 std::cerr << "Failed to update " << l_srcRecordName in cleanSystemVpd()
568 << std::endl; in cleanSystemVpd()
581 std::make_tuple(l_srcRecordName, in cleanSystemVpd()
587 std::cerr << "Failed to update " << l_srcRecordName in cleanSystemVpd()
588 << ":" << l_srcKeywordName << std::endl; in cleanSystemVpd()
593 std::cerr in cleanSystemVpd()
597 << std::endl; in cleanSystemVpd()
604 std::cerr << "Backup Restore JSON is not valid" << std::endl; in cleanSystemVpd()
608 std::cout << "The critical keywords from system backplane VPD has " in cleanSystemVpd()
610 << std::endl; in cleanSystemVpd()
613 catch (const std::exception& l_ex) in cleanSystemVpd()
616 std::cerr in cleanSystemVpd()
618 << l_ex.what() << std::endl; in cleanSystemVpd()
632 throw std::runtime_error("Invalid JSON"); in fetchKeywordInfo()
635 std::string l_srcVpdPath; in fetchKeywordInfo()
636 std::string l_dstVpdPath; in fetchKeywordInfo()
648 throw std::runtime_error("Source path is empty in JSON"); in fetchKeywordInfo()
662 throw std::runtime_error("Destination path is empty in JSON"); in fetchKeywordInfo()
667 const std::string& l_srcRecordName = in fetchKeywordInfo()
669 const std::string& l_srcKeywordName = in fetchKeywordInfo()
671 const std::string& l_dstRecordName = in fetchKeywordInfo()
673 const std::string& l_dstKeywordName = in fetchKeywordInfo()
680 std::cout << "Record or keyword not found in the JSON." in fetchKeywordInfo()
681 << std::endl; in fetchKeywordInfo()
690 std::make_tuple(l_srcRecordName, l_srcKeywordName)); in fetchKeywordInfo()
701 std::get_if<types::BinaryVector>(&l_srcKeywordVariant); in fetchKeywordInfo()
709 std::cout in fetchKeywordInfo()
712 << std::endl; in fetchKeywordInfo()
721 std::make_tuple(l_dstRecordName, l_dstKeywordName)); in fetchKeywordInfo()
732 std::get_if<types::BinaryVector>(&l_dstKeywordVariant); in fetchKeywordInfo()
740 std::cout in fetchKeywordInfo()
743 << std::endl; in fetchKeywordInfo()
750 catch (const std::exception& l_ex) in fetchKeywordInfo()
753 std::cerr << l_ex.what() << std::endl; in fetchKeywordInfo()
760 const std::string& i_objectPath) const noexcept in getFruTypeProperty()
763 std::vector<std::string> l_pimInfList; in getFruTypeProperty()
766 i_objectPath, std::vector<std::string>{constants::inventoryItemInf}); in getFruTypeProperty()
776 std::string::npos && in getFruTypeProperty()
778 std::string(constants::inventoryItemInf).length()) in getFruTypeProperty()
787 bool VpdTool::isFruPresent(const std::string& i_objectPath) const noexcept in isFruPresent()
798 if (const auto l_value = std::get_if<bool>(&l_keyWordValue)) in isFruPresent()
803 catch (const std::runtime_error& l_ex) in isFruPresent()
819 std::cout << "Enter 0 => To exit successfully : "; in printFixSystemVpdOption()
822 std::cout << "Enter 1 => If you choose the data on backup for all " in printFixSystemVpdOption()
824 << std::endl; in printFixSystemVpdOption()
827 std::cout << "Enter 2 => If you choose the data on primary for all " in printFixSystemVpdOption()
829 << std::endl; in printFixSystemVpdOption()
832 std::cout << "Enter 3 => If you wish to explore more options" in printFixSystemVpdOption()
833 << std::endl; in printFixSystemVpdOption()
836 std::cout << "Enter 4 => If you choose the data on backup as the " in printFixSystemVpdOption()
838 << std::endl; in printFixSystemVpdOption()
841 std::cout << "Enter 5 => If you choose the data on primary as the " in printFixSystemVpdOption()
843 << std::endl; in printFixSystemVpdOption()
846 std::cout in printFixSystemVpdOption()
849 << std::endl; in printFixSystemVpdOption()
852 std::cout << "Enter 7 => If you wish to skip the above " in printFixSystemVpdOption()
854 << std::endl; in printFixSystemVpdOption()
868 std::vector<std::string>{constants::inventoryItemInf}); in dumpInventory()
874 std::for_each(l_objectPaths.begin(), l_objectPaths.end(), in dumpInventory()
898 const std::vector<types::TableColumnNameSizePair> in dumpInventory()
914 std::cerr << "Failed to add column " << l_column.first in dumpInventory()
915 << " in Inventory Table." << std::endl; in dumpInventory()
924 if (std::regex_search(l_fruEntry.key(), in dumpInventory()
925 std::regex("unit([0-9][0-9]?)"))) in dumpInventory()
930 std::vector<std::string> l_row; in dumpInventory()
965 catch (const std::exception& l_ex) in dumpInventory()
968 std::cerr << "Dump inventory failed. Error: " << l_ex.what() in dumpInventory()
969 << std::endl; in dumpInventory()
980 std::cerr << "Invalid JSON to print system VPD" << std::endl; in printSystemVpd()
983 std::string l_outline(191, '='); in printSystemVpd()
984 std::cout << "\nRestorable record-keyword pairs and their data on backup & " in printSystemVpd()
986 << l_outline << std::endl; in printSystemVpd()
988 std::cout << std::left << std::setw(6) << "S.No" << std::left in printSystemVpd()
989 << std::setw(8) << "Record" << std::left << std::setw(9) in printSystemVpd()
990 << "Keyword" << std::left << std::setw(75) << "Data On Backup" in printSystemVpd()
991 << std::left << std::setw(75) << "Data On Primary" << std::left in printSystemVpd()
992 << std::setw(14) << "Data Mismatch\n" in printSystemVpd()
993 << l_outline << std::endl; in printSystemVpd()
1004 std::string l_mismatchFound{ in printSystemVpd()
1010 std::string l_splitLine(191, '-'); in printSystemVpd()
1014 std::cout << std::left << std::setw(6) in printSystemVpd()
1015 << static_cast<int>(++l_slNum) << std::left in printSystemVpd()
1016 << std::setw(8) in printSystemVpd()
1018 << std::left << std::setw(9) in printSystemVpd()
1020 << std::left << std::setw(75) << std::setfill(' ') in printSystemVpd()
1023 << std::left << std::setw(75) << std::setfill(' ') in printSystemVpd()
1026 << std::left << std::setw(14) << l_mismatchFound in printSystemVpd()
1028 << l_splitLine << std::endl; in printSystemVpd()
1030 catch (const std::exception& l_ex) in printSystemVpd()
1033 std::cerr << l_ex.what() << std::endl; in printSystemVpd()
1048 std::cerr << "Invalid JSON" << std::endl; in updateAllKeywords()
1052 std::string l_srcVpdPath; in updateAllKeywords()
1067 std::cerr << "source path information is missing in JSON" << std::endl; in updateAllKeywords()
1080 std::cerr << "Missing required information in the JSON" in updateAllKeywords()
1081 << std::endl; in updateAllKeywords()
1094 auto l_paramsToWrite = std::make_tuple( in updateAllKeywords()
1106 catch (const std::exception& l_ex) in updateAllKeywords()
1109 std::cerr << "write keyword failed for record: " in updateAllKeywords()
1112 << ", error: " << l_ex.what() << std::ends; in updateAllKeywords()
1117 std::string l_dataUsed = in updateAllKeywords()
1121 std::cout << "Data updated successfully for all mismatching " in updateAllKeywords()
1123 << l_dataUsed << ". Exit successfully." << std::endl; in updateAllKeywords()
1127 std::cout << "No mismatch found for any of the above mentioned " in updateAllKeywords()
1129 << std::endl; in updateAllKeywords()
1144 throw std::runtime_error("Invalid JSON"); in handleMoreOption()
1147 std::string l_srcVpdPath; in handleMoreOption()
1163 throw std::runtime_error( in handleMoreOption()
1168 [](std::string io_vpdPath, const std::string& i_recordName, in handleMoreOption()
1169 const std::string& i_keywordName, in handleMoreOption()
1175 auto l_paramsToWrite = std::make_tuple( in handleMoreOption()
1181 std::cout << std::endl in handleMoreOption()
1182 << "Data updated successfully." << std::endl; in handleMoreOption()
1185 catch (const std::exception& l_ex) in handleMoreOption()
1188 std::cerr << l_ex.what() << std::endl; in handleMoreOption()
1206 std::cerr in handleMoreOption()
1208 << std::endl; in handleMoreOption()
1212 const std::string l_mismatchFound{ in handleMoreOption()
1218 std::cout << std::endl in handleMoreOption()
1219 << std::left << std::setw(6) << "S.No" << std::left in handleMoreOption()
1220 << std::setw(8) << "Record" << std::left in handleMoreOption()
1221 << std::setw(9) << "Keyword" << std::left in handleMoreOption()
1222 << std::setw(75) << std::setfill(' ') << "Backup Data" in handleMoreOption()
1223 << std::left << std::setw(75) << std::setfill(' ') in handleMoreOption()
1224 << "Primary Data" << std::left << std::setw(14) in handleMoreOption()
1225 << "Data Mismatch" << std::endl; in handleMoreOption()
1227 std::cout << std::left << std::setw(6) in handleMoreOption()
1228 << static_cast<int>(++l_slNum) << std::left in handleMoreOption()
1229 << std::setw(8) in handleMoreOption()
1231 << std::left << std::setw(9) in handleMoreOption()
1233 << std::left << std::setw(75) << std::setfill(' ') in handleMoreOption()
1236 << std::left << std::setw(75) << std::setfill(' ') in handleMoreOption()
1239 << std::left << std::setw(14) << l_mismatchFound in handleMoreOption()
1240 << std::endl; in handleMoreOption()
1242 std::cout << std::string(191, '=') << std::endl; in handleMoreOption()
1257 std::cout << "No mismatch found." << std::endl << std::endl; in handleMoreOption()
1264 std::cin >> l_userSelectedOption; in handleMoreOption()
1285 std::string l_newValue; in handleMoreOption()
1286 std::cout in handleMoreOption()
1287 << std::endl in handleMoreOption()
1291 std::cin >> l_newValue; in handleMoreOption()
1292 std::cout << std::endl in handleMoreOption()
1293 << std::string(191, '=') << std::endl; in handleMoreOption()
1302 catch (const std::exception& l_ex) in handleMoreOption()
1305 std::cerr << l_ex.what() << std::endl; in handleMoreOption()
1310 std::cout << std::endl in handleMoreOption()
1313 << std::endl; in handleMoreOption()
1317 std::cout << "Exit successfully" << std::endl; in handleMoreOption()
1323 std::cout << "Provide a valid option. Retrying for the " in handleMoreOption()
1325 << std::endl; in handleMoreOption()
1335 catch (const std::exception& l_ex) in handleMoreOption()
1338 std::cerr << l_ex.what() << std::endl; in handleMoreOption()
1351 std::string l_vpdManagerStopCmd( in resetVpdOnDbus()
1352 "systemctl stop " + std::string(constants::vpdManagerProcessName)); in resetVpdOnDbus()
1354 std::cout << std::flush; in resetVpdOnDbus()
1355 if (auto l_rc = std::system(l_vpdManagerStopCmd.c_str()); l_rc != 0) in resetVpdOnDbus()
1357 std::cerr << "Failed to stop " << constants::vpdManagerProcessName in resetVpdOnDbus()
1359 << std::endl; in resetVpdOnDbus()
1363 std::string l_vpdServiceIsActiveCmd( in resetVpdOnDbus()
1365 std::string(constants::vpdManagerProcessName)); in resetVpdOnDbus()
1367 std::cout << std::flush; in resetVpdOnDbus()
1368 if (auto l_rc = std::system(l_vpdServiceIsActiveCmd.c_str()); l_rc == 0) in resetVpdOnDbus()
1370 std::cerr in resetVpdOnDbus()
1373 << l_rc << "]. Exiting." << std::endl; in resetVpdOnDbus()
1377 std::error_code l_ec; in resetVpdOnDbus()
1378 if (std::filesystem::exists(INVENTORY_JSON_SYM_LINK, l_ec) && in resetVpdOnDbus()
1379 !std::filesystem::remove(INVENTORY_JSON_SYM_LINK, l_ec)) in resetVpdOnDbus()
1381 std::cerr in resetVpdOnDbus()
1383 << INVENTORY_JSON_SYM_LINK << "]." << std::endl; in resetVpdOnDbus()
1387 std::cerr << "Reason: " << l_ec.message() << std::endl; in resetVpdOnDbus()
1390 std::string l_vpdManagerStartCmd( in resetVpdOnDbus()
1392 std::string(constants::vpdManagerProcessName)); in resetVpdOnDbus()
1394 std::cout << std::flush; in resetVpdOnDbus()
1395 if (auto l_rc = std::system(l_vpdManagerStartCmd.c_str()); in resetVpdOnDbus()
1398 std::cerr << "Failed to start " in resetVpdOnDbus()
1401 << std::endl in resetVpdOnDbus()
1402 << "Reboot BMC to recover the system." << std::endl; in resetVpdOnDbus()
1407 if (static_cast<std::uintmax_t>(-1) == in resetVpdOnDbus()
1408 std::filesystem::remove_all(constants::pimPersistPath, l_ec)) in resetVpdOnDbus()
1410 std::cerr in resetVpdOnDbus()
1412 << constants::pimPersistPath << "]." << std::endl; in resetVpdOnDbus()
1416 std::cerr << "Reason: " << l_ec.message() << std::endl; in resetVpdOnDbus()
1419 std::cerr << "Reboot BMC to recover the system." << std::endl; in resetVpdOnDbus()
1423 std::string l_pimServiceRestartCmd( in resetVpdOnDbus()
1425 std::string(constants::inventoryManagerService)); in resetVpdOnDbus()
1427 std::cout << std::flush; in resetVpdOnDbus()
1428 if (auto l_rc = std::system(l_pimServiceRestartCmd.c_str()); l_rc != 0) in resetVpdOnDbus()
1430 std::cerr << "Failed to restart " in resetVpdOnDbus()
1433 << std::endl in resetVpdOnDbus()
1434 << "Reboot BMC to recover the system." << std::endl; in resetVpdOnDbus()
1438 std::string l_pimServiceIsActiveCmd( in resetVpdOnDbus()
1440 std::string(constants::inventoryManagerService)); in resetVpdOnDbus()
1442 std::cout << std::flush; in resetVpdOnDbus()
1443 if (auto l_rc = std::system(l_pimServiceIsActiveCmd.c_str()); l_rc != 0) in resetVpdOnDbus()
1445 std::cerr << constants::inventoryManagerService in resetVpdOnDbus()
1447 << "]. Exiting." << std::endl in resetVpdOnDbus()
1448 << "Reboot BMC to recover the system." << std::endl; in resetVpdOnDbus()
1452 std::string l_vpdManagerStartCmd( in resetVpdOnDbus()
1453 "systemctl start " + std::string(constants::vpdManagerProcessName)); in resetVpdOnDbus()
1455 std::cout << std::flush; in resetVpdOnDbus()
1456 if (auto l_rc = std::system(l_vpdManagerStartCmd.c_str()); l_rc != 0) in resetVpdOnDbus()
1458 std::cerr << "Failed to start " << constants::vpdManagerProcessName in resetVpdOnDbus()
1460 << std::endl in resetVpdOnDbus()
1461 << "Reboot BMC to recover the system." << std::endl; in resetVpdOnDbus()
1465 std::cout << std::flush; in resetVpdOnDbus()
1466 if (auto l_rc = std::system(l_vpdServiceIsActiveCmd.c_str()); l_rc != 0) in resetVpdOnDbus()
1468 std::cerr << constants::vpdManagerProcessName in resetVpdOnDbus()
1470 << "]. Exiting." << std::endl in resetVpdOnDbus()
1471 << "Reboot BMC to recover the system." << std::endl; in resetVpdOnDbus()
1475 std::string l_waitVpdParserStartCmd( in resetVpdOnDbus()
1477 std::string(constants::waitVpdParserProcessName)); in resetVpdOnDbus()
1479 std::cout << std::flush; in resetVpdOnDbus()
1480 if (auto l_rc = std::system(l_waitVpdParserStartCmd.c_str()); l_rc != 0) in resetVpdOnDbus()
1482 std::cerr << "Failed to start " in resetVpdOnDbus()
1485 << std::endl in resetVpdOnDbus()
1486 << "Reboot BMC to recover the system." << std::endl; in resetVpdOnDbus()
1492 catch (const std::exception& l_ex) in resetVpdOnDbus()
1495 std::cerr << l_ex.what() << std::endl; in resetVpdOnDbus()
1502 const std::string& i_recordName, const std::string& i_keywordName) const in getVpdValueInBiosConfigManager()
1516 const std::string l_attributeName = in getVpdValueInBiosConfigManager()
1517 std::get<0>(l_biosAttributeEntry); in getVpdValueInBiosConfigManager()
1520 const size_t l_numBitsKeyword = std::get<1>(l_biosAttributeEntry); in getVpdValueInBiosConfigManager()
1525 if (auto l_attrVal = std::get_if<int64_t>(&l_attrValueVariant)) in getVpdValueInBiosConfigManager()
1537 std::get_if<std::string>(&l_attrValueVariant)) in getVpdValueInBiosConfigManager()
1550 std::get<2>(l_biosAttributeEntry).has_value() in getVpdValueInBiosConfigManager()
1551 ? std::get<2>(l_biosAttributeEntry).value() in getVpdValueInBiosConfigManager()
1572 std::get<3>(l_biosAttributeEntry).has_value() in getVpdValueInBiosConfigManager()
1573 ? std::get<3>(l_biosAttributeEntry).value() in getVpdValueInBiosConfigManager()
1577 std::get<4>(l_biosAttributeEntry).has_value() in getVpdValueInBiosConfigManager()
1578 ? std::get<4>(l_biosAttributeEntry).value() in getVpdValueInBiosConfigManager()
1589 std::cerr << "Invalid value received for attribute [" + in getVpdValueInBiosConfigManager()
1601 if (std::filesystem::exists(constants::badVpdPath)) in clearVpdDumpDir()
1603 std::filesystem::remove_all(constants::badVpdPath); in clearVpdDumpDir()
1606 catch (const std::exception& l_ex) in clearVpdDumpDir()
1608 std::cerr << "Failed to clear VPD dump path:[" + in clearVpdDumpDir()
1609 std::string(constants::badVpdPath) + "]. Error: " in clearVpdDumpDir()
1610 << l_ex.what() << std::endl; in clearVpdDumpDir()