ENH Move backtrace ignored functions into yml config.

Each module that adds its own methods will do it via yml. This keeps
framework consistent with the others.
This commit is contained in:
Guy Sartorelli 2022-06-23 14:24:23 +12:00
parent 7f7feb8604
commit 268a66418b
2 changed files with 34 additions and 30 deletions

33
_config/backtrace.yml Normal file
View File

@ -0,0 +1,33 @@
---
Name: framework-backtrace
---
SilverStripe\Dev\Backtrace:
ignore_function_args:
- 'mysql_connect'
- 'mssql_connect'
- 'pg_connect'
- ['PDO', '__construct']
- ['mysqli', 'mysqli']
- ['mysqli', 'select_db']
- ['mysqli', 'real_connect']
- ['SilverStripe\\ORM\\DB', 'connect']
- ['SilverStripe\\Security\\Security', 'check_default_admin']
- ['SilverStripe\\Security\\Security', 'encrypt_password']
- ['SilverStripe\\Security\\Security', 'setDefaultAdmin']
- ['SilverStripe\\ORM\\DB', 'createDatabase']
- ['SilverStripe\\Security\\Member', 'checkPassword']
- ['SilverStripe\\Security\\Member', 'changePassword']
- ['SilverStripe\\Security\\MemberAuthenticator\\MemberAuthenticator', 'checkPassword']
- ['SilverStripe\\Security\\MemberPassword', 'checkPassword']
- ['SilverStripe\\Security\\PasswordValidator', 'validate']
- ['SilverStripe\\Security\\PasswordEncryptor_PHPHash', 'encrypt']
- ['SilverStripe\\Security\\PasswordEncryptor_PHPHash', 'salt']
- ['SilverStripe\\Security\\PasswordEncryptor_LegacyPHPHash', 'encrypt']
- ['SilverStripe\\Security\\PasswordEncryptor_LegacyPHPHash', 'salt']
- ['SilverStripe\\Security\\PasswordEncryptor_MySQLPassword', 'encrypt']
- ['SilverStripe\\Security\\PasswordEncryptor_MySQLPassword', 'salt']
- ['SilverStripe\\Security\\PasswordEncryptor_MySQLOldPassword', 'encrypt']
- ['SilverStripe\\Security\\PasswordEncryptor_MySQLOldPassword', 'salt']
- ['SilverStripe\\Security\\PasswordEncryptor_Blowfish', 'encrypt']
- ['SilverStripe\\Security\\PasswordEncryptor_Blowfish', 'salt']
- ['*', 'updateValidatePassword'],

View File

@ -20,36 +20,7 @@ class Backtrace
* so all arguments of the provided functions will be filtered out.
* @var array
*/
private static $ignore_function_args = [
'mysql_connect',
'mssql_connect',
'pg_connect',
['PDO', '__construct'],
['mysqli', 'mysqli'],
['mysqli', 'select_db'],
['mysqli', 'real_connect'],
['SilverStripe\\ORM\\DB', 'connect'],
['SilverStripe\\Security\\Security', 'check_default_admin'],
['SilverStripe\\Security\\Security', 'encrypt_password'],
['SilverStripe\\Security\\Security', 'setDefaultAdmin'],
['SilverStripe\\ORM\\DB', 'createDatabase'],
['SilverStripe\\Security\\Member', 'checkPassword'],
['SilverStripe\\Security\\Member', 'changePassword'],
['SilverStripe\\Security\\MemberAuthenticator\\MemberAuthenticator', 'checkPassword'],
['SilverStripe\\Security\\MemberPassword', 'checkPassword'],
['SilverStripe\\Security\\PasswordValidator', 'validate'],
['SilverStripe\\Security\\PasswordEncryptor_PHPHash', 'encrypt'],
['SilverStripe\\Security\\PasswordEncryptor_PHPHash', 'salt'],
['SilverStripe\\Security\\PasswordEncryptor_LegacyPHPHash', 'encrypt'],
['SilverStripe\\Security\\PasswordEncryptor_LegacyPHPHash', 'salt'],
['SilverStripe\\Security\\PasswordEncryptor_MySQLPassword', 'encrypt'],
['SilverStripe\\Security\\PasswordEncryptor_MySQLPassword', 'salt'],
['SilverStripe\\Security\\PasswordEncryptor_MySQLOldPassword', 'encrypt'],
['SilverStripe\\Security\\PasswordEncryptor_MySQLOldPassword', 'salt'],
['SilverStripe\\Security\\PasswordEncryptor_Blowfish', 'encrypt'],
['SilverStripe\\Security\\PasswordEncryptor_Blowfish', 'salt'],
['*', 'updateValidatePassword'],
];
private static $ignore_function_args = [];
/**
* Return debug_backtrace() results with functions filtered