rpcserver: remove session after registration error

This commit is contained in:
bitromortac 2025-11-07 11:33:13 +01:00
parent 92ad55066c
commit 040261fcd7
No known key found for this signature in database
GPG key ID: 1965063FC13BEBE2

View file

@ -1278,6 +1278,23 @@ func (s *sessionRpcServer) AddAutopilotSession(ctx context.Context,
privacyFlags.Serialize(),
)
if err != nil {
// If we tried to link to a previous session, we delete the
// newly created session in the case of errors to avoid having
// non-revoked sessions lying around.
if len(req.LinkedGroupId) != 0 {
log.Infof("Session registration with autopilot " +
"server failed, deleting the newly created " +
"session")
deleteErr := s.cfg.db.DeleteReservedSession(
ctx, sess.ID,
)
if deleteErr != nil {
log.Errorf("Error deleting session after "+
"failed linking attempt: %v", deleteErr)
}
}
return nil, fmt.Errorf("error registering session with "+
"autopilot server: %v", err)
}