From: Elena Ufimtseva <elena.ufimtseva@oracle.com>
If the remote process is alive, it responds to proxy's heartbeat
messages
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 | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/remote/remote-main.c b/remote/remote-main.c
index 729f7e9..27e4492 100644
--- a/remote/remote-main.c
+++ b/remote/remote-main.c
@@ -355,6 +355,7 @@ static void process_msg(GIOCondition cond, MPQemuChannel *chan)
{
MPQemuMsg *msg = NULL;
Error *err = NULL;
+ int wait;
if ((cond & G_IO_HUP) || (cond & G_IO_ERR)) {
error_setg(&err, "socket closed, cond is %d", cond);
@@ -434,6 +435,11 @@ static void process_msg(GIOCondition cond, MPQemuChannel *chan)
case DEVICE_DEL:
process_device_del_msg(msg);
break;
+ case PROXY_PING:
+ wait = msg->fds[0];
+ notify_proxy(wait, (uint32_t)getpid());
+ PUT_REMOTE_WAIT(wait);
+ break;
default:
error_setg(&err, "Unknown command");
goto finalize_loop;
--
1.8.3.1