* Harden remote agent and basic auth identity handling
* fix(auth): gate forwarded identity headers behind trusted proxies
Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>
* chore: Update CHANGELOG for new feature, and reorder per rules
* chore: Add the issue number to CHANGELOG
* chore: Update hotspots
---------
Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>
Co-authored-by: TheWitness <thewitness@cacti.net>
* Fix#6539 - Allow Standard Cacti Log Files to be Rotated on Demand from the Cacti UI
* QA: php-cs-fixer updates and documentation for lib/database.php
* QA: Update .gitignore for composer files
* QA: Update .gitignore for composer files
* QA: Back off .gitignore change its duplicated
* QA: Fix typing of db_has_permissions
* QA: Fixing typing issue in db_format_index_create
* Update lib/clog_webapi.php
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* QA: Fix additional code issues
* QA: Applying more defaults to add device
* QA: Fix at the database layer
* QA: Fixes based upon automated testing
* QA: Fix at the database layer
* QA: After new SQL checking
* QA: Skip MacTrack oui database download warnings
* QA: Fixing type issue
* QA: Recommendation from Copilot
* QA: Recommendation from Copilot
* QA: Recommendation from Copilot
* QA: Recommendation from Copilot
* QA: Some minor changes to avoid errors in testing
* QA: Unused variable
* QA: Recommendation from Copilot
* QA: Recommendation from Copilot
* QA: Recommendation from Copilot
* QA: Minor introduced code defect
* QA: Adding some unifying space around concatination
* QA: Consistent comments and new function alias'
* QA: Multi-line comment corrections
* QA: Fix SQL Style
* QA: Missed one function alias
* QA: PHPStan Level 2 and PHPDoc fixes
* QA: PHPStan Level 2 and PHPDoc Fixes
* QA: PHPStan Level 6 Fixes
* QA: Fix lib/xml.php to PHPStan Level 6
* QA: Wrong grep -v
* PHPStan Level 6 for lib/vdef.php
* PHPStan Level 8 for lib/time.php
* QA: Raise PHPStan to Level 6 for lib/database.php
* QA: Remove @deprecated tag from grv()
* QA: Switch to htmle() alias over html_escape()
* QA: More addressing PHPStan issues at Level 6
* QA: Change recommended by Copilot for Readability
* QA: More PHPStan fixes
* QA: More PHPStan fixes
* QA: More PHPStan fixes for lib/utility.php
* QA: More PHPStan fixes at Level 6
* QA: Raise PHPStan to Level 6 More Functions
* QA: Raise PHPStan to Level 6 More Functions
* QA: Raise PHPStan to Level 6 More Functions
* QA: Raise PHPStan to Level 6 More Functions
* QA: Raise PHPStan to Level 6 More Functions
* QA: More PHPStan fixes at Level 6
* QA: Raise PHPStan to Level 6 More Functions
* QA: Raise PHPStan to Level 6 More Functions
* QA: More PHPStan fixes at Level 6
* QA: More PHPStan fixes at Level 6
* QA: Raise PHPStan to Level 6 More Functions
* QA: Raise PHPStan to Level 6 More Functions
* QA: More PHPStan fixes at Level 6
* QA: Raise PHPStan to Level 6 More Functions
* QA: Raise PHPStan to Level 6 More Functions
* QA: More PHPStan fixes at Level 6
* QA: Raise PHPStan to Level 6 More Functions
* QA: Raise PHPStan to Level 6 More Functions
* QA: More PHPStan fixes at Level 6
* QA: More PHPStan fixes at Level 6
* QA: More PHPStan fixes at Level 6
* QA: Raise PHPStan to Level 6 More Functions
* QA: More PHPStan fixes at Level 6
* QA: Some phpseclib3 fixups to update to latest
* QA: More fixups for graphing for magic strings
* QA: More PHPStan fixes at Level 6
* QA: Fixing order string type on get_allowed_graphs()
* QA: Fixing improper use of print
* QA: Optimization of color_templates
* QA: Copilot recommendation
* QA: Copilot recommendation
* QA: Copilot recommendation
* QA: Copilot recommendation
* QA: Copilot recommendation
* QA: Copilot recommendation
* QA: Copilot recommendation
* QA: Copilot recommendation
* QA: Raise PHPStan to Level 6 More Functions
* QA: Issues insalling Cacti
* QA: Issues insalling Cacti
* QA: Issues insalling Cacti
* QA: Issues insalling Cacti
* QA: Issues insalling Cacti
* QA: Issues testing Cacti
* QA: Copilot recommendation
* QA: More PHPStan fixes at Level 6
* QA: More PHPStan fixes at Level 6
* QA: More PHPStan fixes at Level 6
* QA: More PHPStan fixes at Level 6
* QA: More PHPStan fixes at Level 6
* QA: Installer failing
* Undo ownership changes to remove tar errors
* QA: Updates after php-cs-fixer
* QA: Adding code checks to syntax checking
* QA Change syntax flow language
* QA: Reduce the number of cures
* QA: Use sequentional option
* Change runner to self-hosted for check job
* Fix typo in OS version in workflow file
* Add Git installation step in workflow
Added step to install Git if not already installed.
* Add '-y' flag to apt-get install and update commands
Updated apt-get commands to include '-y' for automatic confirmation.
* Change workflow OS version to 'ubuntu-latest'
Updated the workflow to use 'ubuntu-latest' instead of 'ubuntu:latest' and modified the 'runs-on' configuration.
* Remove sequential option from phpcsfixer script
* Remove PHPCS fixer step from workflow
Removed PHP coding standards check from workflow.
* Move code checks to before plugins
Moving these core checks to before the plugins are installed as we really want to check only the base Cacti here.
* Add Composer validation and caching to start of workflow
* QA: Addressing PHPStan additional
* QA: Restore composer lock file
* QA: Addressing PHPStan additional
* QA: Addressing PHPStan additional
* QA: Complete LDAP Project
* QA: php-cs-fixer doing it's thing
* QA: Syntax is already happening in PHPStan
* QA: The md5 function no longer exists
* QA: Update after ldap changes
* QA: Undo that last password hack
* QA: Attempting to switch to MariaDB 11.8
* QA: Attempting to switch to MariaDB 11.8
* QA: Resolving some issues with PHP8.4
* QA: Resolving some issues with PHP8.4
* QA: Add PHP8.5 to the matrix
* QA: Removing PHP8.5 due to dependency issues
* QA: Add the DB version to the testing output
* QA: Switch back to MySQL for the moment
* QA: More fidelity in reporting
* QA: The pipe must be mixed
* QA: Moving audit_schema.php changes from 1.2.x
* QA: Moving audit_schema.php changes from 1.2.x
* QA: Restore mysql monitoring
* QA: php-cs-fixer issues
* QA: Attempt to roll back to MariaDB 10.6
* QA: Attempt to fix check_all_pages.sh
* QA: Make installer functional again
* QA: Fix installer php-cs-fixer issues
* QA: Type to a string
* QA: Get the database version correctly
* QA: Fix issue with reports in check_all_pages.sh
* QA: Check the server version in the right place
* Feature: Support SHA256 as a new hash for passwords
* QA: Function definition and return typing audit
* QA: Refinement of form types
* QA: Refinement of form types
* QA: Consistency of comments
* QA: Issues with php-cs-fixer and more comments
* QA: More typing issues
* QA: php-cs-fixer on merge conflict resolution
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* We were unable to login otherwise the way it was coded.
* Also change CactiTab, CactiTimeZone, and CactiDateTime to session Cookies to prevent clutter
* These issues are to fix an issue encountered when trying to support technologies such as MaxScale readonly and readwrite split connections from the same PHP session.
The first issue is to fix a bug where the main Cacti connection was being closed even when you were trying to close another connection. The second enhancement is to enable logging of connects, disconnects and the first SQL execution from a connection.
* issue#5783: Cacti improperly handles connection closing leading to issues with third party connections
* feature#5784: Provide a means by which a user can track Cacti connections and disconnects from the php error_log
* Make PDO::MYSQL_ATTR_SSL_CAPATH and PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT
accessible thru $database_ssl_capath and $database_ssl_verify_server_cert
configuration options.
* typo: wrong variable name
* fixing typo
---------
Co-authored-by: Jose Kahan <jose.kahan@w3.org>
* Resolving CVE-2022-46169
* Provide a restrictive option
* QA: Further restrict allowed headers to those defined in config only
Co-authored-by: TheWitness <thewitness@cacti.net>
* Allow Setting of Cookie 'Cacti' domain edition
* This also allows the Cacti administrator to extend the content security policy to include unsafe-eval for scripts.
Major mods to the CSRF library (which have been submitted upstream but as there's been no activity for a year,
may not get merged)
- Installer now correctly only checks permissions if csrf-secret is set.
- Created new csrf include to make configuration process easier to identify
- Logging can be enabled now for CSRF to debug it
Re-purpose the existing php_snmp_support config value to allow
administrators to disable the built-in SNMP extension.
It can be desirable to force use of the Net-SNMP in some configurations,
particularly when IPv6 is in use. This allows the administrator to set
$php_snmp_support = false in config.php, which will then force use of
the Net-SNMP binaries tools.
This patch adds functionality to control the debugging of low level routines
via defines within the config.php file. In order to allow flexibility, if
these are defined, variables within the $config array are primed as true,
otherwise false.
These elements within the $config array are defined in uppercase to highlight
the difference between these are other ordinary configuration optios.
Should a function or program need to enable debugging of these various
options, simply setting the value to true in the $config array will enable
logging from that point. Inversely, setting it to false will stop logging
from that point.
The only option that is of limited use is DEBUG_READ_CONFIG_OPTION_DB_OPEN
that will only work up to the database being open. Setting this to true
after the database has already been opened will not automatic turn off the
companion option DEBUG_READ_CONFIG_OPTION since the db_connect_real() will
not be called again.
The list of options and their functionality are:
- DEBUG_READ_CONFIG_OPTION : record use of read_config_option()
to cacti-option.log in the system temporary folder
- DEBUG_READ_CONFIG_OPTION_DB_OPEN : Once the database has been
successfully opened, disable DEBUG_READ_CONFIG_OPTION
- DEBUG_SQL_CMD : Always write a copy of the SQL being requested
to the cacti-sql.log file in the system temporary folder
- DEBUG_SQL_FLOW : Write flow of db_xxx calls to the cacti-sql.log
in the system temporary folder.
The system temporary folder is normally set to one of the following:
- Linux, CLI: /tmp/
- Linux, WEB: Apache/Ngix's temporary folder
- Windows, CLI: %TEMP%
- Windows, WEB: Temp folder of web user or %WINDIR%\TEMP
Correcting CVE-2009-4112. This CVE correction will provide some level
of protection to Cacti when unauthorized changes are made to a Data
Input Method.
note, the poller table is updated, see the cacti.sql, also the default
poller_id is now 1, so you need to review the file
install/0_8_8g_to_1_0_0.php for important changes.
for testers, make sure that you not only add the poller_resource_cache
table, but alter the structure of the host table, or you system will
stop working. this is the first of several commit's. taking it in
stages.
1) CSV export functional from Tree and Preview, new MRTG view functional
2) Corrected some rendering issues between tree and breadcrumbs on graph pages
3) Fixed 'Created Graphs debug messages missing'
4) Corrected spelling error in config.php.dist
5) Fixed some warning when creating graphs
git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/cacti/branches/0.8.8@7675 860744bd-22fc-0310-8c96-e9fe5004b5ca
2) Allow Locking/UnLocking of Graphs
3) ToolTips
4) Correct Minor Issues with Login/Out/Permission associated with Theme JS
5) Upgrade jQuery which has Fixes for Major issue in Safari 7/8.1
git-svn-id: svn+ssh://repo.cacti.net/var/data/svnroot/cacti/cacti/branches/0.8.8@7662 860744bd-22fc-0310-8c96-e9fe5004b5ca