diff --git a/includes/polling/os/openbsd.inc.php b/includes/polling/os/openbsd.inc.php index d9e0b9de50..98d4ece920 100644 --- a/includes/polling/os/openbsd.inc.php +++ b/includes/polling/os/openbsd.inc.php @@ -2,6 +2,9 @@ use LibreNMS\RRD\RrdDefinition; +list(,,$version,$features,$hardware) = explode(" ", $device['sysDescr']); +$features = str_replace(['(', ')'], '', $features); + $oids = snmp_get_multi($device, 'pfStateCount.0 pfStateSearches.0 pfStateInserts.0 pfStateRemovals.0', '-OQUs', 'OPENBSD-PF-MIB'); $states = $oids[0]['pfStateCount']; diff --git a/includes/polling/os/unix.inc.php b/includes/polling/os/unix.inc.php index c3c04d8e7e..607b8af6ad 100644 --- a/includes/polling/os/unix.inc.php +++ b/includes/polling/os/unix.inc.php @@ -125,7 +125,7 @@ if ($device['os'] == "linux" || $device['os'] == "endian" || $device['os'] == "p $features = str_replace("(", "", $features); $features = str_replace(")", "", $features); list(,,$hardware) = explode("$features", $device['sysDescr']); -} elseif ($device['os'] == "openbsd" || $device['os'] == "solaris" || $device['os'] == "opensolaris") { +} elseif ($device['os'] == "solaris" || $device['os'] == "opensolaris") { list(,,$version,$features,$hardware) = explode(" ", $device['sysDescr']); $features = str_replace("(", "", $features); $features = str_replace(")", "", $features); diff --git a/tests/data/openbsd_1.json b/tests/data/openbsd_1.json new file mode 100644 index 0000000000..0fb852695b --- /dev/null +++ b/tests/data/openbsd_1.json @@ -0,0 +1,40 @@ +{ + "os": { + "discovery": { + "devices": [ + { + "sysName": "", + "sysObjectID": ".1.3.6.1.4.1.8072.3.2.12", + "sysDescr": "OpenBSD hostname 5.3 GENERIC.MP#58 i386", + "sysContact": null, + "version": null, + "hardware": "", + "features": null, + "location": null, + "os": "openbsd", + "type": "server", + "serial": null, + "icon": "openbsd.svg" + } + ] + }, + "poller": { + "devices": [ + { + "sysName": "", + "sysObjectID": ".1.3.6.1.4.1.8072.3.2.12", + "sysDescr": "OpenBSD hostname 5.3 GENERIC.MP#58 i386", + "sysContact": null, + "version": "5.3", + "hardware": "i386", + "features": "GENERIC.MP#58", + "location": null, + "os": "openbsd", + "type": "server", + "serial": null, + "icon": "openbsd.svg" + } + ] + } + } +}