On 12/27/19 2:40 PM, Wainer dos Santos Moschetta wrote:
Currently the timeout of QEMUMonitorProtocol.accept() is
hard-coded to 15 seconds. This added the parameter `timeout`
so the value can be configured by the user.
Signed-off-by: Wainer dos Santos Moschetta <waine...@redhat.com>
---
python/qemu/qmp.py | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/python/qemu/qmp.py b/python/qemu/qmp.py
index f4e04a6683..914b8c6774 100644
--- a/python/qemu/qmp.py
+++ b/python/qemu/qmp.py
@@ -154,16 +154,17 @@ class QEMUMonitorProtocol:
return self.__negotiate_capabilities()
return None
- def accept(self):
+ def accept(self, timeout=15):
"""
Await connection from QMP Monitor and perform capabilities
negotiation.
+ @param timeout (float): timeout in seconds. Default is 15.
Maybe name with unit: 'timeout_s'.
Reviewed-by: Philippe Mathieu-Daudé <phi...@redhat.com>
@return QMP greeting dict
@raise OSError on socket connection errors
@raise QMPConnectError if the greeting is not received
@raise QMPCapabilitiesError if fails to negotiate capabilities
"""
- self.__sock.settimeout(15)
+ self.__sock.settimeout(timeout)
self.__sock, _ = self.__sock.accept()
self.__sockfile = self.__sock.makefile()
return self.__negotiate_capabilities()