From b94ad929b83604208c3adac42806d80c11c07b94 Mon Sep 17 00:00:00 2001 From: Tony Murray Date: Tue, 8 May 2018 20:05:09 -0500 Subject: [PATCH] Restore OpenBSD version/features/hardware (#8673) * Restore OpenBSD version/features/hardware * Add os test data * Update openbsd.inc.php --- includes/polling/os/openbsd.inc.php | 3 +++ includes/polling/os/unix.inc.php | 2 +- tests/data/openbsd_1.json | 40 +++++++++++++++++++++++++++++ 3 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 tests/data/openbsd_1.json diff --git a/includes/polling/os/openbsd.inc.php b/includes/polling/os/openbsd.inc.php index d9e0b9de50e8..98d4ece92083 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 c3c04d8e7e5b..607b8af6ad93 100644 --- a/includes/polling/os/unix.inc.php +++ b/includes/polling/os/unix.inc.php @@ -125,7 +125,7 @@ $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 000000000000..0fb852695b4a --- /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" + } + ] + } + } +}