security: Mark ROMs as read only when using AppArmor

Before this, attempting to use a ROM that was not explictly
marked at read only resulted in an error at startup time.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
Andrea Bolognani committed 2026-02-24 11:29:07 +01:00
1 parent 5dc97de2c4
commit a32b4a6037
1 file changed
+8
+8
View File
@@ -1021,7 +1021,15 @@ get_files(vahControl * ctl)
if (ctl->def->os.loader && ctl->def->os.loader->path) {
bool readonly = false;
/* Look at the readonly attribute, but also keep in mind that ROMs
* are always loaded read-only regardless of whether the attribute
* is present. Validation ensures that nonsensical configurations
* (type=rom readonly=no) are rejected long before we get here */
virTristateBoolToBool(ctl->def->os.loader->readonly, &readonly);
if (ctl->def->os.loader->type == VIR_DOMAIN_LOADER_TYPE_ROM)
readonly = true;
if (vah_add_file(&buf,
ctl->def->os.loader->path,
readonly ? "rk" : "rwk") != 0) {