* fix: lldp discovery change local port resolution
dot1dBasePortIfIndex seems to skip some ports in certain configurations on Cisco devices.
Add quirk for Calix devices that return different port labels than they actually are.
* bdcom uses NMS-LLDP-MIB too.
* use dot1dBasePort to look up ifIndex if we can.
fix find_port_id() deleting all variables when device_id was given
improve find_port_id() to find ports where only a number is given
fix orphan deletion count
fix insert and update of links with strings where int are required
* refactor: discovery protocols re-write
extract more code to make it easier to read
use snmpwalk_group
walk lldpRemTable instead of lldpRemoteSystemsData
Optimize discover_device to reduce dns lookups of bad dns names
Make discovery_by_ip behavior consistent between cdp and lldp
move can_skip_discovery to discovery functions
Tested lldp, cdp, and ospf.
* always discover links even if the remote device isn't in system
Fix discover_link always updating
* fix style
* fix update, not fetching id
* increase platform length. Most devices use sysDescr here, which is max length 255
* remove orphaned links
* update db_schema.yaml
* feature: Allow ignore_mount, ignore_mount_string, ignore_mount_regex at OS level
* Change the storage settings to override global instead of merge.
Add documentation
* refactor: use the Config class includes/discovery
* fix issue with $config variable not accessible in include-dir.inc.php
* improved whitespace
* Tidy up discovery_by_ip
* feature: Improve yaml state discovery
Handle state values that are returned as strings instead of int
Synchronize state values for existing state translations so we can change them without creating a new translation and losing historical data
More extensive/verbose yaml discovery phpunit tests
dbBulkInsert, use the first entry instead of requiring the first entry to be at index 0
* Update sensor state documentation
re-order values for better readability
remove os check
Use snmpwalk_group since it is more flexible
* Add some more debug output in dynamic discovery
* Refactor remove use of pear Net_IPv4 and Net_IPv6
Caution, I added tests to test the functionality of the new functions, but I'm not 100% certain the replaced usages match 100%. Please test.
Left usage in generate-iplist.php because I'm not sure the use of that script, so I didn't want to implement additional functionality to support it.
Add support for ipv6 fo ipInNetwork() function
Add phpdocs to functions
Remove accidental inclusion
Use binary operations instead of string for networKFromIp()
Tidy up binary operations in ipInNetwork()
tidy parsing cidr network
Change to a class based implementation.
Update phpdocs.
Fully catch exceptions for hex parsing.
Fix mistake.
support older phpunit versions
Fix php shifting to negative with php 5
* Fix graph authorization. Uncaught exception and checking an ipv4 against an ipv6 network == fail.
* Also remove colons from hex strings.
* Fix typo in bgp polling
Two passes of removing invalid characters from hex strings. (That way we don't mangle valid IPs)
* device: Improved HP ILO4 support
Added HP ILO4 temperature (HDD, motherboard), power, state (powersupply, HDD, Fans, memory slots) sensors support.
Tested with HP ProLiant ML350p Gen8-Gen9
* actual MIB file!
Set default divisors for all devices and remove per-os overrides for them.
We should only use per-os overrides for non-standard behavior.
High possibility for breakage here if devices not listed here have non-standard behavior.
* feature: Added support for sensors to be discovered from yaml
* added discovery definitions
* Updated docs, more code updates + tests
* removed the oid_name use
* pre-set variable from scrut output
* small updates as per comments in pr
* Allow index in descr
* Added ability to skip values
* Check for numeric values
* small update of oid name
* newdevice: HPE RT3000 UPS
* newdevice: HPE RT3000 UPS
* changed polling to snmp_get_multi_oid, fixed divisor for load and voltage
* fixed blank line in functions.inc.php
There were two or more separate $device arrays during discovery. When one was updated, others were not.
Combine those all.
Make sure the new os is loaded if the os changed.
* fix: Updated ipv4/ipv6 discovery to exclude IPs with invalid port_ids
* Update the valid IP sql queries to include addresses without a port
* Fix arp-table too.
* newdevice: improve comware detection
Only some H3C Comware devices were detected as comware, detect them all.
* Update the test data
FYI, C1234 was just a nonsense string
* refactor: Moved ifLabel -> cleanPort and updated the usage
* added list of tags allowed
* few updates as per comments from @murrant
* Added simple unit tests
* double display for javascript popover
* Remove ifNameDescr() function
Fix realtime port page
* remove accidental temp code
* Remove double display calls in ajax tables
* Fix Generex votage sensor divisor and add an exclusion option
* Allow OID to be used to figure out if we need to change the divisor.
* Missed current and found bugs while I was there.
* Use returns swap oid logic