}
+int
+qemuMonitorGetObjectProps(qemuMonitorPtr mon,
+ const char *object,
+ char ***props)
+{
+ VIR_DEBUG("object=%s props=%p", object, props);
+
+ QEMU_CHECK_MONITOR_JSON(mon);
+
+ return qemuMonitorJSONGetObjectProps(mon, object, props);
+}
+
+
char *
qemuMonitorGetTargetArch(qemuMonitorPtr mon)
{
int qemuMonitorGetDeviceProps(qemuMonitorPtr mon,
const char *device,
char ***props);
+int qemuMonitorGetObjectProps(qemuMonitorPtr mon,
+ const char *object,
+ char ***props);
char *qemuMonitorGetTargetArch(qemuMonitorPtr mon);
int qemuMonitorNBDServerStart(qemuMonitorPtr mon,
}
+int
+qemuMonitorJSONGetObjectProps(qemuMonitorPtr mon,
+ const char *object,
+ char ***props)
+{
+ int ret = -1;
+ virJSONValuePtr cmd;
+ virJSONValuePtr reply = NULL;
+
+ *props = NULL;
+
+ if (!(cmd = qemuMonitorJSONMakeCommand("qom-list-properties",
+ "s:typename", object,
+ NULL)))
+ return -1;
+
+ if (qemuMonitorJSONCommand(mon, cmd, &reply) < 0)
+ goto cleanup;
+
+ if (qemuMonitorJSONHasError(reply, "DeviceNotFound")) {
+ ret = 0;
+ goto cleanup;
+ }
+
+ ret = qemuMonitorJSONParsePropsList(cmd, reply, props);
+ cleanup:
+ virJSONValueFree(reply);
+ virJSONValueFree(cmd);
+ return ret;
+}
+
+
char *
qemuMonitorJSONGetTargetArch(qemuMonitorPtr mon)
{
const char *device,
char ***props)
ATTRIBUTE_NONNULL(2) ATTRIBUTE_NONNULL(3);
+int qemuMonitorJSONGetObjectProps(qemuMonitorPtr mon,
+ const char *object,
+ char ***props)
+ ATTRIBUTE_NONNULL(2) ATTRIBUTE_NONNULL(3);
char *qemuMonitorJSONGetTargetArch(qemuMonitorPtr mon);
int qemuMonitorJSONNBDServerStart(qemuMonitorPtr mon,