Lines Matching +refs:std +refs:dev

128 std::map<std::string, std::string> s_read_file_cache;
142 inline bool read_proc_file(hz::File& file, std::string& contents) in read_proc_file()
152 std::FILE* fp = file.get_handle(); in read_proc_file()
157 while (std::fgets(line, static_cast<int>(sizeof(line)), fp) != NULL) { in read_proc_file()
174 inline bool read_proc_file_lines(hz::File& file, std::vector<std::string>& lines) in read_proc_file_lines()
176 std::string contents; in read_proc_file_lines()
188 inline std::string read_proc_partitions_file(std::vector<std::string>& lines) in read_proc_partitions_file()
190 std::string path; in read_proc_partitions_file()
198 std::string error_msg = file.get_error_utf8(); // save before calling other file functions in read_proc_partitions_file()
207 return std::string(); in read_proc_partitions_file()
213 inline std::string read_proc_devices_file(std::vector<std::string>& lines) in read_proc_devices_file()
215 std::string path; in read_proc_devices_file()
223 std::string error_msg = file.get_error_utf8(); // save before calling other file functions in read_proc_devices_file()
232 return std::string(); in read_proc_devices_file()
240 inline std::string read_proc_scsi_scsi_file(std::vector< std::pair<int, std::string> >& vendors_mod… in read_proc_scsi_scsi_file()
242 std::string path; in read_proc_scsi_scsi_file()
249 std::vector<std::string> lines; in read_proc_scsi_scsi_file()
252 std::string error_msg = file.get_error_utf8(); // save before calling other file functions in read_proc_scsi_scsi_file()
264 for (std::size_t i = 0; i < lines.size(); ++i) { in read_proc_scsi_scsi_file()
265 std::string trimmed = hz::string_trim_copy(lines[i]); in read_proc_scsi_scsi_file()
269 std::string scsi_host_str; in read_proc_scsi_scsi_file()
275 vendors_models.push_back(std::make_pair(last_scsi_host, trimmed)); in read_proc_scsi_scsi_file()
279 return std::string(); in read_proc_scsi_scsi_file()
288 inline std::string read_proc_scsi_sg_devices_file(std::vector< std::vector<int> >& sg_entries) in read_proc_scsi_sg_devices_file()
290 std::string path; in read_proc_scsi_sg_devices_file()
297 std::vector<std::string> lines; in read_proc_scsi_sg_devices_file()
300 std::string error_msg = file.get_error_utf8(); // save before calling other file functions in read_proc_scsi_sg_devices_file()
311 for (std::size_t i = 0; i < lines.size(); ++i) { in read_proc_scsi_sg_devices_file()
312 std::string trimmed = hz::string_trim_copy(lines[i]); in read_proc_scsi_sg_devices_file()
313 std::vector<std::string> line(9); in read_proc_scsi_sg_devices_file()
315 std::vector<int> line_num(line.size(), -1); in read_proc_scsi_sg_devices_file()
316 for (std::size_t j = 0; j < line_num.size(); ++j) { in read_proc_scsi_sg_devices_file()
327 return std::string(); in read_proc_scsi_sg_devices_file()
379 inline std::string detect_drives_linux_proc_partitions(std::vector<StorageDeviceRefPtr>& drives, Ex… in detect_drives_linux_proc_partitions()
383 std::vector<std::string> lines; in detect_drives_linux_proc_partitions()
384 std::string error_msg = read_proc_partitions_file(lines); in detect_drives_linux_proc_partitions()
389 std::vector<std::string> blacklist; in detect_drives_linux_proc_partitions()
398 std::vector<std::string> devices; in detect_drives_linux_proc_partitions()
400 for (std::size_t i = 0; i < lines.size(); ++i) { in detect_drives_linux_proc_partitions()
401 std::string line = hz::string_trim_copy(lines[i]); in detect_drives_linux_proc_partitions()
405 std::string dev; in detect_drives_linux_proc_partitions() local
406 …^ \\t\\n]+[ \\t]+[^ \\t\\n]+[ \\t]+[^ \\t\\n]+[ \\t]+([^ \\t\\n]+)/", line, &dev) || dev.empty()) { in detect_drives_linux_proc_partitions()
413 …for (std::vector<std::string>::const_iterator iter = blacklist.begin(); iter != blacklist.end(); +… in detect_drives_linux_proc_partitions()
414 if (app_pcre_match(*iter, dev)) { in detect_drives_linux_proc_partitions()
422 std::string path = "/dev/" + dev; // let's just hope the it's /dev. in detect_drives_linux_proc_partitions()
423 …if (std::find(devices.begin(), devices.end(), path) == devices.end()) { // there may be duplicates in detect_drives_linux_proc_partitions()
430 for (std::size_t i = 0; i < devices.size(); ++i) { in detect_drives_linux_proc_partitions()
445 return std::string(); in detect_drives_linux_proc_partitions()
477 inline std::string detect_drives_linux_3ware(std::vector<StorageDeviceRefPtr>& drives, ExecutorFact… in detect_drives_linux_3ware()
481 std::vector<std::string> lines; in detect_drives_linux_3ware()
482 std::string error_msg = read_proc_devices_file(lines); in detect_drives_linux_3ware()
492 for (std::size_t i = 0; i < lines.size(); ++i) { in detect_drives_linux_3ware()
493 std::string dev; in detect_drives_linux_3ware() local
494 …cre_match("/^[ \\t]*[0-9]+[ \\t]+(tw[ael])(?:[ \\t]*|$)/", hz::string_trim_copy(lines[i]), &dev)) { in detect_drives_linux_3ware()
495 debug_out_dump("app", DBG_FUNC_MSG << "Found 3ware " << dev << " entry in devices file.\n"); in detect_drives_linux_3ware()
496 if (dev == "twa") { in detect_drives_linux_3ware()
498 } else if (dev == "twe") { in detect_drives_linux_3ware()
500 } else if (dev == "twl") { in detect_drives_linux_3ware()
510 return std::string(); // no controllers in detect_drives_linux_3ware()
516 std::vector< std::pair<int, std::string> > vendors_models; in detect_drives_linux_3ware()
523 std::set<int> controller_hosts; // scsi hosts (controllers) found for tw* in detect_drives_linux_3ware()
524 std::map<std::string, int> device_numbers; // device base (e.g. twa) -> number of times found in detect_drives_linux_3ware()
526 for (std::size_t i = 0; i < vendors_models.size(); ++i) { in detect_drives_linux_3ware()
528 std::string vendor; in detect_drives_linux_3ware()
545 std::string dev_base = "twe"; in detect_drives_linux_3ware()
566std::string dev = std::string("/dev/") + dev_base + hz::number_to_string(device_numbers[dev_base]); in detect_drives_linux_3ware() local
569 error_msg = tw_cli_get_drives(dev, vendors_models[i].first, drives, ex_factory, false); in detect_drives_linux_3ware()
572 max_ports = std::max(0, std::min(max_ports, 127)); // Sanity check in detect_drives_linux_3ware()
573 …g_out_dump("app", "Starting brute-force port scan on 0-" << max_ports << " ports, device \"" << dev in detect_drives_linux_3ware()
575 std::string last_output; in detect_drives_linux_3ware()
576 …error_msg = smartctl_scan_drives_sequentially(dev, "3ware,%d", 0, max_ports, drives, ex_factory, l… in detect_drives_linux_3ware()
611 inline std::string detect_drives_linux_adaptec(std::vector<StorageDeviceRefPtr>& drives, ExecutorFa… in detect_drives_linux_adaptec()
615 std::vector<std::string> lines; in detect_drives_linux_adaptec()
616 std::string error_msg = read_proc_devices_file(lines); in detect_drives_linux_adaptec()
624 for (std::size_t i = 0; i < lines.size(); ++i) { in detect_drives_linux_adaptec()
632 return std::string(); // no controllers in detect_drives_linux_adaptec()
638 std::vector< std::pair<int, std::string> > vendors_models; in detect_drives_linux_adaptec()
644 std::vector< std::vector<int> > sg_entries; in detect_drives_linux_adaptec()
652 std::set<int> controller_hosts; in detect_drives_linux_adaptec()
654 for (std::size_t i = 0; i < vendors_models.size(); ++i) { in detect_drives_linux_adaptec()
670 for (std::size_t sg_num = 0; sg_num < sg_entries.size(); ++sg_num) { in detect_drives_linux_adaptec()
680 std::string dev = std::string("/dev/sg") + hz::number_to_string(sg_num); in detect_drives_linux_adaptec() local
681 StorageDeviceRefPtr drive(new StorageDevice(dev, std::string("sat"))); in detect_drives_linux_adaptec()
683 std::string local_error_msg = drive->fetch_basic_data_and_parse(smartctl_ex); in detect_drives_linux_adaptec()
684 std::string output = drive->get_info_output(); in detect_drives_linux_adaptec()
741 inline std::string detect_drives_linux_areca(std::vector<StorageDeviceRefPtr>& drives, ExecutorFact… in detect_drives_linux_areca()
745 std::vector< std::pair<int, std::string> > vendors_models; in detect_drives_linux_areca()
746 std::string error_msg = read_proc_scsi_scsi_file(vendors_models); in detect_drives_linux_areca()
751 std::map<int, bool> controller_hosts; // controller # -> has_enclosure in detect_drives_linux_areca()
753 for (std::size_t i = 0; i < vendors_models.size(); ++i) { in detect_drives_linux_areca()
754 std::string vendor_line = vendors_models[i].second; in detect_drives_linux_areca()
781 std::vector< std::vector<int> > sg_entries; in detect_drives_linux_areca()
789 …for (std::map<int, bool>::iterator iter = controller_hosts.begin(); iter != controller_hosts.end()… in detect_drives_linux_areca()
793 for (std::size_t sg_num = 0; sg_num < sg_entries.size(); ++sg_num) { in detect_drives_linux_areca()
809 max_enclosures = std::max(1, std::min(8, max_enclosures)); // 1-8 in detect_drives_linux_areca()
812 max_ports = std::max(1, std::min(128, max_ports)); // 1-128 sanity check in detect_drives_linux_areca()
814 std::string dev = std::string("/dev/sg") + hz::number_to_string(sg_num); in detect_drives_linux_areca() local
816 …osure scan on 1-" << max_ports << " ports, 1-" << max_enclosures << " enclosures, device \"" << dev in detect_drives_linux_areca()
818 std::string last_output; in detect_drives_linux_areca()
820 …error_msg = smartctl_scan_drives_sequentially(dev, "areca,%d/" + hz::number_to_string(enclosure_no… in detect_drives_linux_areca()
828std::string ports_path = hz::string_sprintf("/sys/bus/scsi/devices/host%d/scsi_host/host%d/host_fw… in detect_drives_linux_areca()
830 std::string ports_file_contents; in detect_drives_linux_areca()
841 max_ports = std::max(1, std::min(24, max_ports)); // 1-24 sanity check in detect_drives_linux_areca()
843 std::string dev = std::string("/dev/sg") + hz::number_to_string(sg_num); in detect_drives_linux_areca() local
844 …g_out_dump("app", "Starting brute-force port scan on 1-" << max_ports << " ports, device \"" << dev in detect_drives_linux_areca()
846 std::string last_output; in detect_drives_linux_areca()
847 …error_msg = smartctl_scan_drives_sequentially(dev, "areca,%d", 1, max_ports, drives, ex_factory, l… in detect_drives_linux_areca()
892 inline std::string detect_drives_linux_cciss(std::vector<StorageDeviceRefPtr>& drives, ExecutorFact… in detect_drives_linux_cciss()
896 std::vector<std::string> lines; in detect_drives_linux_cciss()
897 std::string error_msg = read_proc_devices_file(lines); in detect_drives_linux_cciss()
902 std::vector<int> controllers; in detect_drives_linux_cciss()
905 for (std::size_t i = 0; i < lines.size(); ++i) { in detect_drives_linux_cciss()
906 std::string controller_no_str; in detect_drives_linux_cciss()
916 return std::string(); // no controllers in detect_drives_linux_cciss()
921 for (std::size_t controller_index = 0; controller_index < controllers.size(); ++controller_index) { in detect_drives_linux_cciss()
924 std::string dev = std::string("/dev/cciss/c") + hz::number_to_string(controller_no) + "d0"; in detect_drives_linux_cciss() local
927 …app", "Starting brute-force port scan on 1-" << max_port << " ports, device \"" << dev << "\".\n"); in detect_drives_linux_cciss()
930 …StorageDeviceRefPtr drive(new StorageDevice(dev, std::string("cciss,") + hz::number_to_string(port… in detect_drives_linux_cciss()
932 std::string local_error_msg = drive->fetch_basic_data_and_parse(smartctl_ex); in detect_drives_linux_cciss()
933 std::string output = drive->get_info_output(); in detect_drives_linux_cciss()
984 inline std::string detect_drives_linux_hpsa(std::vector<StorageDeviceRefPtr>& drives, ExecutorFacto… in detect_drives_linux_hpsa()
988 std::vector< std::pair<int, std::string> > vendors_models; in detect_drives_linux_hpsa()
989 std::string error_msg = read_proc_scsi_scsi_file(vendors_models); in detect_drives_linux_hpsa()
994 std::vector< std::vector<int> > sg_entries; in detect_drives_linux_hpsa()
1002 std::set<int> controller_hosts; in detect_drives_linux_hpsa()
1004 for (std::size_t i = 0; i < vendors_models.size(); ++i) { in detect_drives_linux_hpsa()
1019 for (std::size_t sg_num = 0; sg_num < sg_entries.size(); ++sg_num) { in detect_drives_linux_hpsa()
1029 std::string dev = std::string("/dev/sg") + hz::number_to_string(sg_num); in detect_drives_linux_hpsa() local
1032 …app", "Starting brute-force port scan on 0-" << max_port << " ports, device \"" << dev << "\".\n"); in detect_drives_linux_hpsa()
1035 …StorageDeviceRefPtr drive(new StorageDevice(dev, std::string("cciss,") + hz::number_to_string(port… in detect_drives_linux_hpsa()
1037 std::string local_error_msg = drive->fetch_basic_data_and_parse(smartctl_ex); in detect_drives_linux_hpsa()
1038 std::string output = drive->get_info_output(); in detect_drives_linux_hpsa()
1072 std::string detect_drives_linux(std::vector<StorageDeviceRefPtr>& drives, ExecutorFactoryRefPtr ex_… in detect_drives_linux()
1076 std::vector<std::string> error_msgs; in detect_drives_linux()
1077 std::string error_msg; in detect_drives_linux()