* OS Testing update
Option on pre-commit.php to run tests for just one OS. Reorganize tests a bit to support this.
Improved bgp-peers capture and os module capture (initial)
Better output when phpunit tests fail
* fix a couple issues. Better output for another
* Use the correct setup function
* Processor Tests!
* Capture data from live devices easily.
* fix up some stuff, remove powerconnect things as they seem to be just broken.
* formatting, fix missing assignment
add netonix processor data
* fix multi-line, always add sysDescr and sysObjectID
ios cpm test file
* revert composer change and fix whitespace issues
* add help text
* missed help text
* tighter debug output
* handle empty strings properly and mibs with numbers
* use keys for sorting as intended
* fix type with empty data
* oops :)
* whitespace fix
* try installing fping
* Fix TestCase collision + cleanup
* mark TestCase as abstract
don't run two instances of snmpsim
* better database dumps, improved capture
* style fixes
* fix quotes add a few more tables
* add --prefer-new, properly merge data
* Support separate discovery and poller data. But don't waste space if they aren't needed.
* refactor to use class
collects all code in one place for reusability
* reorganize
* Print out when not saving.
* Support for running multiple (or all) modules at once.
* tidy
* Change unit test to a generic name and test all modules we have data for.
* Add documentation and a few more tidies
* whitespace fixes
* Fix tests, add a couple more modules, more docs
* More docs updates
* Fix scrutinizer issues
* add bgp-peers
* Refactor alert transports to classes
* Fix linting
* Make Slack alert transport php 5.3 compatible
* Rename call method to deliverAlert for alert transport
* Inital cambium refactor
* Refactored tests
* Remove CMM from pmp group
* Add sensors / Give CMM individual OS
* Fix linting
* More Sensors / states and Revised Headers
* Added old graphs / more sensors
* Add modulation rate to sensor
* Fix Hardware detection bug
* Further hardware detection refinments
* Modify pmp hardware detection
* New Wireless Metric - SSR
* SSR Sensor Graph
* Migrate SSR to metric
* Added last metric file
* Add master check to isAp method
* Fix variables in epmp
* CMM Discovery and state addition
* Add another test for cmm
* Allow the URL a user is sent to after logging out to be customised
This is required for any authentication system that has a magic URL for logging out (e.g. /Shibboleth.sso/Logout).
* Allow auth plugins to return a username
This is a bit cleaner than the current auth flow, which special cases e.g. http authentication
* Add some tests, defaults and documentation
* Add single sign-on authentication mechanism
* Make HTTPAuth use the authExternal/getExternalUsername methods
* Add to acknowledgements
* Add reset method to Auth
* refactor: AD Auth defer connection until it is needed
Nice error if php-ldap is missing instead of http 500.
* Add the same error when ldap is missing to other auth methods.
Not as graceful looking in the authorizers since they do not defer connection.
There is no need to redeclare abstract functions if the class is already abstract and they are declared in parent.
For some reason the PHP on CentOS7 throws an error with this where all other php versions I tested were fine with it.
* Refactored authorizers to classes
* Merge changes for #7335
* ! fix php 5.3 incompatibility
* Update ADAuthorizationAuthorizer.php
* Fix get_user -> getUser
* Rename AuthorizerFactory to Auth, fix interface missing functions
* Add phpdocs to all interface methods and normalize the names a bit.
* Re-work auth_test.php AD bind tests to work properly with the new class.
Reflection is not the nicest tool, but I think it is appropriate here.
Handle exceptions more nicely in auth_test.php
* Restore AD getUseList fix
Not sure how it got removed
* fix auth_test.php style
I have failed SQL in my log for creating entries.
Which amount to "Component Created"
It doesn't seem as though the status log is displayed/used anywhere. Especially considering, it didn't work. So, I would be fine with deleting it too.
* fix: validation check cli php extensions
Fix fatal errors when mysql is not loaded / can't connect
* fix: discovery validation incorrectly detects on ping only devices.
* fix: Extra fping checks in validation
Don't check suid or getcap if we can execute fping (as librenms or webserver user)
* Warn about suid in webui
* Update Programs.php
* Update Programs.php
* Use locate_binary() so we match production code (it is also better)
Don't cripple capabilities check, prefer that over suid.
* Fix ".status services" to show properly possible status codes
Nagios plugins return 0-3 as the status-code for a check. This adds "warning" and "unknown" to the output as well as hierarchical color for the total.
* Fix ".status services" to show properly possible status codes
Nagios plugins return 0-3 as the status-code for a check. This adds "warning" and "unknown" to the output as well as hierarchical color for the total.
* refactor: remove duplicated data collection in old wifi module
Still a bit more work before we can fully remove it
* remove unused graphs
update overview graphs for some wireless os
* fix: ping fails on servers that don't set PATH in cron
Find the full path to fping and persist it in the database.
Adds the ability to persist settings with Config::set()
* Add ability to set webui settings.
No display of for paths, because it would be inconsistent.
* fix: improve poller validation
remove failures when there are duplicate poller entries
add warning that there are duplicate poller entries
link to the poller log in the webui
small fix to getBaseURL() to avoid exception when run from cli.
* Re-run poller cleanup to try to reduce the users with duplicates.
* refactor: convert validations to modules to prep for gui integration
* accidentally dropped, schema update
* fix accidental output to webui
* mention discovery-wrapper.py and re-arrange.
* refine some fix statements
* rename the Config validation group to Configuration.
* fix some scrutinizer issues
remove as many local functions from validator.php as possible
move extensions from pre-check
remove duplicate timezone check
looks like there is some db schema differences between mariadb 10.1 and 10.2, investigating
* mariadb version diff take2
* Check schema version first for database.
Remove stop to go back to command line for install docs.
Add helpful link when there is no devices added to /addhost
* fix incorrect validation for empty string defaults
* Fix style
* Add additional file permissions checks
* catch exception and fail for invalid timezone
Change visuals a bit.
* add php version warning
* fix space
* feature: AD support nested groups (resubmit #7175)
Don't let groups with periods in the name cause issues.
* Merge #7245 into this PR
* Capture Exceptions in get_userlevel()
* Throw generic error if auth_ad_debug is not enabled to prevent information leak.
* 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
* refactor: speed up is_valid_port()
Convert is_valid_port to Config
Several Config optimizations
Update documentation
* fix getCombined() when os key is not set, but global is.
Add more tests
* 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
* newdevice: Added support for Saf Integra Access points
* Split SAF Integra models out
* added polling files
* Update saf-integra-b.yaml
* Update saf-integra-w.yaml