security: fix use-after-free in virSecuritySELinuxReserveLabel

commit 2e668a61d5ae4("Fix error handling when adding MCS labels") uses
the 'pctx' in virReportError after it has been freed. Fix it.

Fixes: 2e668a61d5
Signed-off-by: Zhenyu Ye <yezhenyu2@huawei.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
This commit is contained in:
Zhenyu Ye 2021-08-17 10:55:24 +08:00 committed by Martin Kletzander
parent 32f7db0989
commit f14d6ab537

View File

@ -967,7 +967,6 @@ virSecuritySELinuxReserveLabel(virSecurityManager *mgr,
}
ctx = context_new(pctx);
freecon(pctx);
if (!ctx)
goto error;
@ -985,11 +984,13 @@ virSecuritySELinuxReserveLabel(virSecurityManager *mgr,
goto error;
}
freecon(pctx);
context_free(ctx);
return 0;
error:
freecon(pctx);
context_free(ctx);
return -1;
}