From: Elena Ufimtseva <elena.ufimts...@oracle.com> Signed-off-by: Jagannathan Raman <jag.ra...@oracle.com> Signed-off-by: John G Johnson <john.g.john...@oracle.com> Signed-off-by: Elena Ufimtseva <elena.ufimts...@oracle.com> --- remote/remote-main.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/remote/remote-main.c b/remote/remote-main.c index 52da3c8..fa32f2a 100644 --- a/remote/remote-main.c +++ b/remote/remote-main.c @@ -63,6 +63,7 @@ #include "block/qdict.h" #include "qapi/qmp/qlist.h" #include "qemu/log.h" +#include "qemu/cutils.h" static ProxyLinkState *proxy_link; PCIDevice *remote_pci_dev; @@ -437,6 +438,7 @@ int main(int argc, char *argv[]) { Error *err = NULL; QemuThread main_loop_thread; + int fd = -1; module_call_init(MODULE_INIT_QOM); @@ -461,7 +463,13 @@ int main(int argc, char *argv[]) return -1; } - proxy_link_set_sock(proxy_link, STDIN_FILENO); + fd = qemu_parse_fd(argv[1]); + if (fd == -1) { + printf("Failed to parse fd for remote process.\n"); + return -EINVAL; + } + + proxy_link_set_sock(proxy_link, fd); proxy_link_set_callback(proxy_link, process_msg); qemu_thread_create(&main_loop_thread, "remote-main-loop", remote_main_loop, -- 1.8.3.1