diff --git a/UPGRADING.md b/UPGRADING.md index 82ca1b2ed52..d7c70b165fa 100644 --- a/UPGRADING.md +++ b/UPGRADING.md @@ -11,7 +11,7 @@ - [BC] The `TDependentListKey` type was removed and replaced with an optional property of the `TIntRange` type. -- [BC] Value of constant `Psalm\Type\TaintKindGroup::ALL_INPUT` changed to reflect a new `TaintKind::INPUT_XPATH` have been added. Accordingly, default values for `$taint` parameters of `Psalm\Codebase::addTaintSource()` and `Psalm\Codebase::addTaintSink()` have been changed as well. +- [BC] Value of constant `Psalm\Type\TaintKindGroup::ALL_INPUT` changed to reflect new `TaintKind::INPUT_SLEEP` and `TaintKind::INPUT_XPATH` have been added. Accordingly, default values for `$taint` parameters of `Psalm\Codebase::addTaintSource()` and `Psalm\Codebase::addTaintSink()` have been changed as well. - [BC] Property `Config::$shepherd_host` was replaced with `Config::$shepherd_endpoint` diff --git a/config.xsd b/config.xsd index 3d5deb61e90..de492fcb1da 100644 --- a/config.xsd +++ b/config.xsd @@ -439,6 +439,7 @@ + diff --git a/docs/running_psalm/error_levels.md b/docs/running_psalm/error_levels.md index ca2ba58e4e4..35c4821d63b 100644 --- a/docs/running_psalm/error_levels.md +++ b/docs/running_psalm/error_levels.md @@ -293,6 +293,7 @@ Level 5 and above allows a more non-verifiable code, and higher levels are even - [TaintedInput](issues/TaintedInput.md) - [TaintedLdap](issues/TaintedLdap.md) - [TaintedShell](issues/TaintedShell.md) + - [TaintedSleep](issues/TaintedSleep.md) - [TaintedSql](issues/TaintedSql.md) - [TaintedSSRF](issues/TaintedSSRF.md) - [TaintedSystemSecret](issues/TaintedSystemSecret.md) diff --git a/docs/running_psalm/issues.md b/docs/running_psalm/issues.md index d05e070a4e7..c14cecd1451 100644 --- a/docs/running_psalm/issues.md +++ b/docs/running_psalm/issues.md @@ -241,6 +241,7 @@ - [TaintedInput](issues/TaintedInput.md) - [TaintedLdap](issues/TaintedLdap.md) - [TaintedShell](issues/TaintedShell.md) + - [TaintedSleep](issues/TaintedSleep.md) - [TaintedSql](issues/TaintedSql.md) - [TaintedSSRF](issues/TaintedSSRF.md) - [TaintedSystemSecret](issues/TaintedSystemSecret.md) diff --git a/docs/running_psalm/issues/TaintedSleep.md b/docs/running_psalm/issues/TaintedSleep.md new file mode 100644 index 00000000000..181cf045c89 --- /dev/null +++ b/docs/running_psalm/issues/TaintedSleep.md @@ -0,0 +1,9 @@ +# TaintedSleep + +Emitted when user-controlled input can be passed into a `sleep` call or similar. + +```php +xpath($expression); }', ], + 'escapeSeconds' => [ + 'code' => ' 'TaintedXpath', ], + 'taintedSleep' => [ + 'code' => ' 'TaintedSleep', + ], + 'taintedUsleep' => [ + 'code' => ' 'TaintedSleep', + ], + 'taintedTimeNanosleepSeconds' => [ + 'code' => ' 'TaintedSleep', + ], + 'taintedTimeNanosleepNanoseconds' => [ + 'code' => ' 'TaintedSleep', + ], + 'taintedTimeSleepUntil' => [ + 'code' => ' 'TaintedSleep', + ], ]; }