mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 03:12:22 +00:00
security_selinux: Implement virSecurityManager{Set,Restore}SavedStateLabel
These APIs are are basically virSecuritySELinuxDomainSetPathLabelRO() and virSecuritySELinuxDomainRestorePathLabel(). Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Erik Skultety <eskultet@redhat.com>
This commit is contained in:
parent
e69df41b6d
commit
d665b1ef3b
@ -2501,6 +2501,38 @@ virSecuritySELinuxRestoreHostdevLabel(virSecurityManagerPtr mgr,
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
virSecuritySELinuxSetSavedStateLabel(virSecurityManagerPtr mgr,
|
||||
virDomainDefPtr def,
|
||||
const char *savefile)
|
||||
{
|
||||
virSecuritySELinuxDataPtr data = virSecurityManagerGetPrivateData(mgr);
|
||||
virSecurityLabelDefPtr secdef;
|
||||
|
||||
secdef = virDomainDefGetSecurityLabelDef(def, SECURITY_SELINUX_NAME);
|
||||
|
||||
if (!savefile || !secdef || !secdef->relabel || data->skipAllLabel)
|
||||
return 0;
|
||||
|
||||
return virSecuritySELinuxSetFilecon(mgr, savefile, data->content_context, false);
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
virSecuritySELinuxRestoreSavedStateLabel(virSecurityManagerPtr mgr,
|
||||
virDomainDefPtr def,
|
||||
const char *savefile)
|
||||
{
|
||||
virSecurityLabelDefPtr secdef;
|
||||
|
||||
secdef = virDomainDefGetSecurityLabelDef(def, SECURITY_SELINUX_NAME);
|
||||
if (!secdef || !secdef->relabel)
|
||||
return 0;
|
||||
|
||||
return virSecuritySELinuxRestoreFileLabel(mgr, savefile, true);
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
virSecuritySELinuxSetChardevLabel(virSecurityManagerPtr mgr,
|
||||
virDomainDefPtr def,
|
||||
@ -3616,6 +3648,9 @@ virSecurityDriver virSecurityDriverSELinux = {
|
||||
.domainSetSecurityHostdevLabel = virSecuritySELinuxSetHostdevLabel,
|
||||
.domainRestoreSecurityHostdevLabel = virSecuritySELinuxRestoreHostdevLabel,
|
||||
|
||||
.domainSetSavedStateLabel = virSecuritySELinuxSetSavedStateLabel,
|
||||
.domainRestoreSavedStateLabel = virSecuritySELinuxRestoreSavedStateLabel,
|
||||
|
||||
.domainSetSecurityImageFDLabel = virSecuritySELinuxSetImageFDLabel,
|
||||
.domainSetSecurityTapFDLabel = virSecuritySELinuxSetTapFDLabel,
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user