]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: monitor: Drop support for extra wrapper for 'object_add'
authorPeter Krempa <pkrempa@redhat.com>
Wed, 12 Mar 2025 15:23:17 +0000 (16:23 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Thu, 13 Mar 2025 14:38:16 +0000 (15:38 +0100)
The QAPIfication of objects removed the extra wrapper object which we
were adding in the monitor code to simplify the other callers.

Now that we support only qemus which don't require this we can drop the
support code.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/qemu/qemu_monitor.c
src/qemu/qemu_monitor_priv.h

index c069d172654f6b5ffb9e37ce2d45540953419209..724e82e8a454620906d51401d26917b697a65169 100644 (file)
@@ -600,7 +600,6 @@ qemuMonitorOpenInternal(virDomainObj *vm,
     mon->cb = cb;
 
     if (priv) {
-        mon->objectAddNoWrap = virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_OBJECT_JSON);
         mon->queryNamedBlockNodesFlat = virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_QMP_QUERY_NAMED_BLOCK_NODES_FLAT);
         mon->blockjobMaskProtocol = virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCKJOB_BACKING_MASK_PROTOCOL);
     }
@@ -2660,7 +2659,6 @@ qemuMonitorAddObject(qemuMonitor *mon,
                      virJSONValue **props,
                      char **alias)
 {
-    g_autoptr(virJSONValue) pr = NULL;
     const char *type = NULL;
     const char *id = NULL;
     g_autofree char *aliasCopy = NULL;
@@ -2688,30 +2686,7 @@ qemuMonitorAddObject(qemuMonitor *mon,
     if (alias)
         aliasCopy = g_strdup(id);
 
-    if (mon->objectAddNoWrap) {
-        pr = g_steal_pointer(props);
-    } else {
-        /* we need to create a wrapper which has the 'qom-type' and 'id' and
-         * store everything else under a 'props' sub-object */
-        g_autoptr(virJSONValue) typeobj = NULL;
-        g_autoptr(virJSONValue) idobj = NULL;
-
-        ignore_value(virJSONValueObjectRemoveKey(*props, "qom-type", &typeobj));
-        ignore_value(virJSONValueObjectRemoveKey(*props, "id", &idobj));
-
-        /* avoid empty 'props' member */
-        if (!virJSONValueObjectGetKey(*props, 0))
-            g_clear_pointer(props, virJSONValueFree);
-
-        if (virJSONValueObjectAdd(&pr,
-                                  "s:qom-type", type,
-                                  "s:id", id,
-                                  "A:props", props,
-                                  NULL) < 0)
-            return -1;
-    }
-
-    if (qemuMonitorJSONAddObject(mon, &pr) < 0)
+    if (qemuMonitorJSONAddObject(mon, props) < 0)
         return -1;
 
     if (alias)
index 0c2098c4562fb9cd12d99d27d9bee46d66c6edb8..8cb5e2c3a48f3e9a5427f4ba4b7fe951107837a7 100644 (file)
@@ -88,8 +88,6 @@ struct _qemuMonitor {
     void *logOpaque;
     virFreeCallback logDestroy;
 
-    /* true if qemu no longer wants 'props' sub-object of object-add */
-    bool objectAddNoWrap;
     /* query-named-block-nodes supports the 'flat' option */
     bool queryNamedBlockNodesFlat;
     /* use the backing-mask-protocol flag of block-commit/stream */