mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
security: AppArmor: Implement per-image seclabel restore
Refactor the existing code to allow re-using it for the per-image label restore too.
This commit is contained in:
parent
7077cfeff4
commit
15cad6577f
@ -683,15 +683,23 @@ AppArmorClearSecuritySocketLabel(virSecurityManagerPtr mgr ATTRIBUTE_UNUSED,
|
||||
|
||||
|
||||
/* Called when hotplugging */
|
||||
static int
|
||||
AppArmorRestoreSecurityImageLabel(virSecurityManagerPtr mgr,
|
||||
virDomainDefPtr def,
|
||||
virStorageSourcePtr src)
|
||||
{
|
||||
if (!virStorageSourceIsLocalStorage(src))
|
||||
return 0;
|
||||
|
||||
return reload_profile(mgr, def, NULL, false);
|
||||
}
|
||||
|
||||
static int
|
||||
AppArmorRestoreSecurityDiskLabel(virSecurityManagerPtr mgr,
|
||||
virDomainDefPtr def,
|
||||
virDomainDiskDefPtr disk)
|
||||
{
|
||||
if (virDomainDiskGetType(disk) == VIR_STORAGE_TYPE_NETWORK)
|
||||
return 0;
|
||||
|
||||
return reload_profile(mgr, def, NULL, false);
|
||||
return AppArmorRestoreSecurityImageLabel(mgr, def, disk->src);
|
||||
}
|
||||
|
||||
/* Called when hotplugging */
|
||||
@ -975,6 +983,8 @@ virSecurityDriver virAppArmorSecurityDriver = {
|
||||
.domainSetSecurityDiskLabel = AppArmorSetSecurityDiskLabel,
|
||||
.domainRestoreSecurityDiskLabel = AppArmorRestoreSecurityDiskLabel,
|
||||
|
||||
.domainRestoreSecurityImageLabel = AppArmorRestoreSecurityImageLabel,
|
||||
|
||||
.domainSetSecurityDaemonSocketLabel = AppArmorSetSecurityDaemonSocketLabel,
|
||||
.domainSetSecuritySocketLabel = AppArmorSetSecuritySocketLabel,
|
||||
.domainClearSecuritySocketLabel = AppArmorClearSecuritySocketLabel,
|
||||
|
Loading…
x
Reference in New Issue
Block a user