As discussed here [0][1] Coverity reported two issues:
- On libxlDomainMigrationPrepareTunnel3 @@mig will be leaked on failures
after sucessfull call libxlDomainMigrationPrepareAny hence we free it.
Setting mig = NULL after @mig is assigned plus adding libxlMigrationCookieFree
on error paths addresses the issue. In case virThreadCreate fails,
unref of args frees the cookie on dispose function (libxlMigrationDstArgsDispose)
- On libxlMigrationStartTunnel @tc would be leaked.
Fixed by correctly saving the newly allocated @tc onto @tnl such that
libxlMigrationStopTunnel would free it up.
[0]
https://www.redhat.com/archives/libvir-list/2017-February/msg00791.html
[1]
https://www.redhat.com/archives/libvir-list/2017-February/msg00833.html
Signed-off-by: Joao Martins <joao.m.martins(a)oracle.com>
---
Cc: John Ferlan <jferlan(a)redhat.com>
Cc: Jim Fehlig <jfehlig(a)suse.com>
---
src/libxl/libxl_migration.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)