On-behalf-of: SAP stefan.kober@sap.com
Signed-off-by: Stefan Kober <stefan.kober@cyberus-technology.de>
---
src/ch/ch_monitor.c | 20 ++++++++++++++++++++
src/ch/ch_monitor.h | 4 ++++
2 files changed, 24 insertions(+)
diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c
index 2ebeb46ad4..710ba06d2d 100644
--- a/src/ch/ch_monitor.c
+++ b/src/ch/ch_monitor.c
@@ -315,6 +315,26 @@ virCHMonitorBuildDisksJson(virJSONValue *content, virDomainDef *vmdef)
return 0;
}
+int
+virCHMonitorAddDisk(virCHMonitor *monitor,
+ virDomainDiskDef *diskdef)
+{
+ g_autoptr(virJSONValue) disk = virCHMonitorBuildDiskJson(diskdef);
+ g_autoptr(virJSONValue) response = NULL;
+
+ if (!disk) {
+ virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+ _("Could not build disk json"));
+ return -1;
+ }
+
+ return virCHMonitorPut(monitor,
+ URL_VM_ADD_DISK,
+ disk,
+ NULL,
+ NULL);
+}
+
static int
virCHMonitorBuildRngJson(virJSONValue *content, virDomainDef *vmdef)
{
diff --git a/src/ch/ch_monitor.h b/src/ch/ch_monitor.h
index ffac9e938e..8338059c7c 100644
--- a/src/ch/ch_monitor.h
+++ b/src/ch/ch_monitor.h
@@ -40,6 +40,7 @@
#define URL_VM_INFO "vm.info"
#define URL_VM_SAVE "vm.snapshot"
#define URL_VM_RESTORE "vm.restore"
+#define URL_VM_ADD_DISK "vm.add-disk"
#define VIRCH_THREAD_NAME_LEN 16
@@ -138,6 +139,9 @@ int
virCHMonitorBuildNetJson(virDomainNetDef *netdef,
int netindex,
char **jsonstr);
+int
+virCHMonitorAddDisk(virCHMonitor* mon, virDomainDiskDef *diskdef);
+
int virCHMonitorBuildRestoreJson(virDomainDef *vmdef,
const char *from,
char **jsonstr);
--
2.50.1