diff options
-rw-r--r-- | monitor.c | 5 | ||||
-rw-r--r-- | qemu-monitor.hx | 2 |
2 files changed, 4 insertions, 3 deletions
@@ -2447,7 +2447,7 @@ static int do_getfd(Monitor *mon, const QDict *qdict, QObject **ret_data) return 0; } -static void do_closefd(Monitor *mon, const QDict *qdict, QObject **ret_data) +static int do_closefd(Monitor *mon, const QDict *qdict, QObject **ret_data) { const char *fdname = qdict_get_str(qdict, "fdname"); mon_fd_t *monfd; @@ -2461,10 +2461,11 @@ static void do_closefd(Monitor *mon, const QDict *qdict, QObject **ret_data) close(monfd->fd); qemu_free(monfd->name); qemu_free(monfd); - return; + return 0; } qemu_error_new(QERR_FD_NOT_FOUND, fdname); + return -1; } static void do_loadvm(Monitor *mon, const QDict *qdict) diff --git a/qemu-monitor.hx b/qemu-monitor.hx index e8e2ee1a28..6e84f76043 100644 --- a/qemu-monitor.hx +++ b/qemu-monitor.hx @@ -1100,7 +1100,7 @@ ETEXI .params = "closefd name", .help = "close a file descriptor previously passed via SCM rights", .user_print = monitor_user_noop, - .mhandler.cmd_new = do_closefd, + .cmd_new_ret = do_closefd, }, STEXI |