aboutsummaryrefslogtreecommitdiffstats
path: root/syz-manager/manager.go
diff options
context:
space:
mode:
authorPimyn Girgis <pimyn@google.com>2025-11-04 13:37:50 +0000
committerTahuti <pimyn@google.com>2025-11-04 18:13:13 +0000
commit72925e09143f010e594be7bcb6c257e822b2252c (patch)
tree9b25fe6a430264b9140e7238b59ea91376c4025d /syz-manager/manager.go
parent686bf6572b519f4c79772e87d617d0eceaf20dca (diff)
syz-manager: fix nil pointer dereference in VMLess mode
When in VMLess mode, reproLoop is not initialized, but we try to dereference it anyways. Check if reproLoop is nil before trying to access it. Fixes #6420
Diffstat (limited to 'syz-manager/manager.go')
-rw-r--r--syz-manager/manager.go3
1 files changed, 2 insertions, 1 deletions
diff --git a/syz-manager/manager.go b/syz-manager/manager.go
index 67af3bb29..79f9e95d6 100644
--- a/syz-manager/manager.go
+++ b/syz-manager/manager.go
@@ -1343,7 +1343,8 @@ func (mgr *Manager) setPhaseLocked(newPhase int) {
if mgr.phase == newPhase {
panic("repeated phase update")
}
- if newPhase == phaseTriagedHub {
+ // In VMLess mode, mgr.reproLoop is nil.
+ if newPhase == phaseTriagedHub && mgr.reproLoop != nil {
// Start reproductions.
go mgr.reproLoop.Loop(vm.ShutdownCtx())
}