From: Elena Ufimtseva <elena.ufimtseva@oracle.com>
Signed-off-by: Jagannathan Raman <jag.raman@oracle.com>
Signed-off-by: John G Johnson <john.g.johnson@oracle.com>
Signed-off-by: Elena Ufimtseva <elena.ufimtseva@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 3e92a83..e284d5f 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;
@@ -439,6 +440,7 @@ finalize_loop:
int main(int argc, char *argv[])
{
Error *err = NULL;
+ int fd = -1;
module_call_init(MODULE_INIT_QOM);
@@ -461,7 +463,13 @@ int main(int argc, char *argv[])
return -1;
}
- proxy_link_init_channel(proxy_link, &proxy_link->com, STDIN_FILENO);
+ fd = qemu_parse_fd(argv[1]);
+ if (fd == -1) {
+ printf("Failed to parse fd for remote process.\n");
+ return -EINVAL;
+ }
+
+ proxy_link_init_channel(proxy_link, &proxy_link->com, fd);
proxy_link_set_callback(proxy_link, process_msg);
start_handler(proxy_link);
--
1.8.3.1