dgryski.semgrep-go.ctx-time.ctx-done-and-timers

Author
unknown
Download Count*
License
ctx.Done() and time.After/time.NewTicker
Run Locally
Run in CI
Defintion
rules:
- id: ctx-done-and-timers
patterns:
- pattern-either:
- pattern: |
select {
case <-ctx.Done():
$BODY
case <-time.After(...):
$BODY
}
- pattern: |
$T := time.NewTicker(...)
...
select {
case <-ctx.Done():
$BODY
case <-$T.C:
$BODY
}
message: ctx.Done() and time.After/time.NewTicker
languages:
- go
severity: ERROR
metadata:
license: MIT
Short Link: https://sg.run/AKXB