summary refs log tree commit diff stats
path: root/qapi
diff options
context:
space:
mode:
Diffstat (limited to 'qapi')
-rw-r--r--qapi/block-export.json27
1 files changed, 25 insertions, 2 deletions
diff --git a/qapi/block-export.json b/qapi/block-export.json
index 4eeac7842d..e819e70cac 100644
--- a/qapi/block-export.json
+++ b/qapi/block-export.json
@@ -121,6 +121,25 @@
             '*num-queues': 'uint16'} }
 
 ##
+# @BlockExportOptionsFuse:
+#
+# Options for exporting a block graph node on some (file) mountpoint
+# as a raw image.
+#
+# @mountpoint: Path on which to export the block device via FUSE.
+#              This must point to an existing regular file.
+#
+# @growable: Whether writes beyond the EOF should grow the block node
+#            accordingly. (default: false)
+#
+# Since: 6.0
+##
+{ 'struct': 'BlockExportOptionsFuse',
+  'data': { 'mountpoint': 'str',
+            '*growable': 'bool' },
+  'if': 'defined(CONFIG_FUSE)' }
+
+##
 # @NbdServerAddOptions:
 #
 # An NBD block export, per legacy nbd-server-add command.
@@ -222,11 +241,13 @@
 #
 # @nbd: NBD export
 # @vhost-user-blk: vhost-user-blk export (since 5.2)
+# @fuse: FUSE export (since: 6.0)
 #
 # Since: 4.2
 ##
 { 'enum': 'BlockExportType',
-  'data': [ 'nbd', 'vhost-user-blk' ] }
+  'data': [ 'nbd', 'vhost-user-blk',
+            { 'name': 'fuse', 'if': 'defined(CONFIG_FUSE)' } ] }
 
 ##
 # @BlockExportOptions:
@@ -267,7 +288,9 @@
   'discriminator': 'type',
   'data': {
       'nbd': 'BlockExportOptionsNbd',
-      'vhost-user-blk': 'BlockExportOptionsVhostUserBlk'
+      'vhost-user-blk': 'BlockExportOptionsVhostUserBlk',
+      'fuse': { 'type': 'BlockExportOptionsFuse',
+                'if': 'defined(CONFIG_FUSE)' }
    } }
 
 ##