python/qemu: qmp: Make accept()'s timeout configurable
Currently the timeout of QEMUMonitorProtocol.accept() is hard-coded to 15.0 seconds. This added the parameter `timeout` so the value can be configured by the user. Signed-off-by: Wainer dos Santos Moschetta <wainersm@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: John Snow <jsnow@redhat.com> Message-Id: <20200204141111.3207-4-wainersm@redhat.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
This commit is contained in:
parent
a0a261e472
commit
54aafc2fc6
@ -154,16 +154,23 @@ class QEMUMonitorProtocol:
|
|||||||
return self.__negotiate_capabilities()
|
return self.__negotiate_capabilities()
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def accept(self):
|
def accept(self, timeout=15.0):
|
||||||
"""
|
"""
|
||||||
Await connection from QMP Monitor and perform capabilities negotiation.
|
Await connection from QMP Monitor and perform capabilities negotiation.
|
||||||
|
|
||||||
|
@param timeout: timeout in seconds (nonnegative float number, or
|
||||||
|
None). The value passed will set the behavior of the
|
||||||
|
underneath QMP socket as described in [1]. Default value
|
||||||
|
is set to 15.0.
|
||||||
@return QMP greeting dict
|
@return QMP greeting dict
|
||||||
@raise OSError on socket connection errors
|
@raise OSError on socket connection errors
|
||||||
@raise QMPConnectError if the greeting is not received
|
@raise QMPConnectError if the greeting is not received
|
||||||
@raise QMPCapabilitiesError if fails to negotiate capabilities
|
@raise QMPCapabilitiesError if fails to negotiate capabilities
|
||||||
|
|
||||||
|
[1]
|
||||||
|
https://docs.python.org/3/library/socket.html#socket.socket.settimeout
|
||||||
"""
|
"""
|
||||||
self.__sock.settimeout(15)
|
self.__sock.settimeout(timeout)
|
||||||
self.__sock, _ = self.__sock.accept()
|
self.__sock, _ = self.__sock.accept()
|
||||||
self.__sockfile = self.__sock.makefile()
|
self.__sockfile = self.__sock.makefile()
|
||||||
return self.__negotiate_capabilities()
|
return self.__negotiate_capabilities()
|
||||||
|
Loading…
Reference in New Issue
Block a user