[libvirt] [PATCH 08/12] qemu: Allow forcing read-only mode in qemuDomainStorageSourceAccessModify

Peter Krempa posted 12 patches 6 years, 9 months ago
[libvirt] [PATCH 08/12] qemu: Allow forcing read-only mode in qemuDomainStorageSourceAccessModify
Posted by Peter Krempa 6 years, 9 months ago
Add a new flag which will set the image as read-only even if the image
data allows writing.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
---
 src/qemu/qemu_domain.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index f7d1250f09..e8f6ee548a 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -9216,6 +9216,8 @@ typedef enum {
     QEMU_DOMAIN_STORAGE_SOURCE_ACCESS_REVOKE = 1 << 0,
     /* operate on full backing chain rather than single image */
     QEMU_DOMAIN_STORAGE_SOURCE_ACCESS_CHAIN = 1 << 1,
+    /* force permissions to read-only when allowing */
+    QEMU_DOMAIN_STORAGE_SOURCE_ACCESS_READ_ONLY = 1 << 2,
 } qemuDomainStorageSourceAccessFlags;


@@ -9243,6 +9245,10 @@ qemuDomainStorageSourceAccessModify(virQEMUDriverPtr driver,
     virErrorPtr orig_err = NULL;
     bool chain = flags & QEMU_DOMAIN_STORAGE_SOURCE_ACCESS_CHAIN;
     int rc;
+    bool was_readonly = src->readonly;
+
+    if (flags & QEMU_DOMAIN_STORAGE_SOURCE_ACCESS_READ_ONLY)
+        src->readonly = true;

     /* just tear down the disk access */
     if (flags & QEMU_DOMAIN_STORAGE_SOURCE_ACCESS_REVOKE) {
@@ -9292,6 +9298,7 @@ qemuDomainStorageSourceAccessModify(virQEMUDriverPtr driver,
         VIR_WARN("Unable to release lock on %s", srcstr);

  cleanup:
+    src->readonly = was_readonly;
     virErrorRestore(&orig_err);

     return ret;
-- 
2.20.1

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 08/12] qemu: Allow forcing read-only mode in qemuDomainStorageSourceAccessModify
Posted by Ján Tomko 6 years, 9 months ago
On Thu, Apr 18, 2019 at 04:43:03PM +0200, Peter Krempa wrote:
>Add a new flag which will set the image as read-only even if the image
>data allows writing.
>
>Signed-off-by: Peter Krempa <pkrempa@redhat.com>
>---
> src/qemu/qemu_domain.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>

Reviewed-by: Ján Tomko <jtomko@redhat.com>

Jano
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list