diff options
Diffstat (limited to 'modules-available/statistics/inc/hardwareparserlegacy.inc.php')
-rw-r--r-- | modules-available/statistics/inc/hardwareparserlegacy.inc.php | 43 |
1 files changed, 3 insertions, 40 deletions
diff --git a/modules-available/statistics/inc/hardwareparserlegacy.inc.php b/modules-available/statistics/inc/hardwareparserlegacy.inc.php index 4d8a8502..277f6d4a 100644 --- a/modules-available/statistics/inc/hardwareparserlegacy.inc.php +++ b/modules-available/statistics/inc/hardwareparserlegacy.inc.php @@ -134,47 +134,10 @@ class HardwareParserLegacy $row['hdds'] = &$hdds; } - public static function parsePci(&$pci1, &$pci2, $data) + public static function parsePci(string $data): array { - preg_match_all('/[a-f0-9:.]{7}\s+"(Class\s*)?(?<class>[a-f0-9]{4})"\s+"(?<ven>[a-f0-9]{4})"\s+"(?<dev>[a-f0-9]{4})"/is', $data, $out, PREG_SET_ORDER); - $pci = array(); - foreach ($out as $entry) { - if (!isset($pci[$entry['class']])) { - $class = 'c.' . $entry['class']; - $res = PciId::getPciId('CLASS', $class); - if ($res === false) { - $pci[$entry['class']]['lookupClass'] = 'do-lookup'; - $pci[$entry['class']]['class'] = $class; - } else { - $pci[$entry['class']]['class'] = $res; - } - } - $new = array( - 'ven' => $entry['ven'], - 'dev' => $entry['ven'] . ':' . $entry['dev'], - ); - $res = PciId::getPciId('VENDOR', $new['ven']); - if ($res === false) { - $new['lookupVen'] = 'do-lookup'; - } else { - $new['ven'] = $res; - } - $res = PciId::getPciId('DEVICE', $new['dev']); - if ($res === false) { - $new['lookupDev'] = 'do-lookup'; - } else { - $new['dev'] = $res . ' (' . $new['dev'] . ')'; - } - $pci[$entry['class']]['entries'][] = $new; - } - ksort($pci); - foreach ($pci as $class => $entry) { - if ($class === '0300' || $class === '0200' || $class === '0403') { - $pci1[] = $entry; - } else { - $pci2[] = $entry; - } - } + preg_match_all('/[a-f0-9:.]{7}\s+"(Class\s*)?(?<class>[a-f0-9]{4})"\s+"(?<vendor>[a-f0-9]{4})"\s+"(?<device>[a-f0-9]{4})"/is', $data, $out, PREG_SET_ORDER); + return $out; } public static function parseSmartctl(&$hdds, $data) |