diff options
author | Kevin Wolf <kwolf@redhat.com> | 2020-02-24 15:29:58 +0100 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2020-03-06 17:21:28 +0100 |
commit | c62d24e906e54b5d641f662f50a3e3fbdeae2377 (patch) | |
tree | d3ab730218fd12e8db697f245fb04a6ddf9ef8e3 /monitor/hmp-cmds.c | |
parent | eed8b691783264013142ed0273e08f5a7f913569 (diff) | |
download | qemu-c62d24e906e54b5d641f662f50a3e3fbdeae2377.zip |
blockdev-nbd: Boxed argument type for nbd-server-add
Move the arguments of nbd-server-add to a new struct BlockExportNbd and
convert the command to 'boxed': true. This makes it easier to share code
with the storage daemon.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-Id: <20200224143008.13362-11-kwolf@redhat.com>
Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'monitor/hmp-cmds.c')
-rw-r--r-- | monitor/hmp-cmds.c | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c index 30313858c2..fb4c2fd2a8 100644 --- a/monitor/hmp-cmds.c +++ b/monitor/hmp-cmds.c @@ -2341,6 +2341,7 @@ void hmp_nbd_server_start(Monitor *mon, const QDict *qdict) Error *local_err = NULL; BlockInfoList *block_list, *info; SocketAddress *addr; + BlockExportNbd export; if (writable && !all) { error_setg(&local_err, "-w only valid together with -a"); @@ -2373,8 +2374,13 @@ void hmp_nbd_server_start(Monitor *mon, const QDict *qdict) continue; } - qmp_nbd_server_add(info->value->device, false, NULL, false, NULL, - true, writable, false, NULL, &local_err); + export = (BlockExportNbd) { + .device = info->value->device, + .has_writable = true, + .writable = writable, + }; + + qmp_nbd_server_add(&export, &local_err); if (local_err != NULL) { qmp_nbd_server_stop(NULL); @@ -2395,8 +2401,15 @@ void hmp_nbd_server_add(Monitor *mon, const QDict *qdict) bool writable = qdict_get_try_bool(qdict, "writable", false); Error *local_err = NULL; - qmp_nbd_server_add(device, !!name, name, false, NULL, true, writable, - false, NULL, &local_err); + BlockExportNbd export = { + .device = (char *) device, + .has_name = !!name, + .name = (char *) name, + .has_writable = true, + .writable = writable, + }; + + qmp_nbd_server_add(&export, &local_err); hmp_handle_error(mon, local_err); } |