Files
librenms-librenms/includes/polling/os/avocent.inc.php
Tony Murray fad0bffc43 Escape SNMP & IPMI shell commands (#9537)
hopefully doesn't break anything
Mostly issues with snmp oids and options containing spaces.  Try to remove all of those.

DO NOT DELETE THIS TEXT

#### Please note

> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.

- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)

#### Testers

If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
After you are done testing, you can remove the changes with `./scripts/github-remove`.  If there are schema changes, you can ask on discord how to revert.
2018-12-16 13:42:50 +00:00

24 lines
908 B
PHP

<?php
$avocent_tmp = snmp_get_multi_oid($device, ['pmProductModel.0', 'pmSerialNumber.0', 'pmFirmwareVersion.0'], '-OUQs', 'PM-MIB');
$hardware = $avocent_tmp['pmProductModel.0'];
$serial = $avocent_tmp['pmSerialNumber.0'];
$version = $avocent_tmp['pmFirmwareVersion.0'];
if (empty($hardware)) {
if (starts_with($device['sysObjectID'], '.1.3.6.1.4.1.10418.16')) {
$avocent_oid = '.1.3.6.1.4.1.10418.16.2.1';
} elseif (starts_with($device['sysObjectID'], '.1.3.6.1.4.1.10418.26')) {
$avocent_oid = '.1.3.6.1.4.1.10418.26.2.1';
}
if ($avocent_oid) {
$avocent_tmp = snmp_get_multi_oid($device, "$avocent_oid.2.0 $avocent_oid.4.0 $avocent_oid.7.0");
list($hardware,) = explode(' ', $avocent_tmp["$avocent_oid.2.0"], 2);
$serial = $avocent_tmp["$avocent_oid.4.0"];
$version = $avocent_tmp["$avocent_oid.7.0"];
}
}
unset($avocent_tmp);