The keep-alive-count, keep-alive-idle and keep-alive-interval members of InetSocketAddress have been available for -netdev stream (and every other QAPI SocketAddress consumer) since the qemu-sockets keep-alive options were extended in 10.1, but were never documented in qemu-options.hx.
Add their descriptions, and drop the "Not supported for passive sockets" remark from addr.keep-alive=on|off: as of 10.1 keep-alive on listening sockets is also supported (see the SocketAddress @keep-alive QAPI doc comment, which records "(Since 4.2, not supported for listening sockets until 10.1)"). Signed-off-by: Mitsuru Kariya <[email protected]> --- qemu-options.hx | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/qemu-options.hx b/qemu-options.hx index 527fc12494..7432b77571 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -3034,7 +3034,7 @@ DEF("netdev", HAS_ARG, QEMU_OPTION_netdev, "-netdev socket,id=str[,fd=h][,udp=host:port][,localaddr=host:port]\n" " configure a network backend to connect to another network\n" " using an UDP tunnel\n" - "-netdev stream,id=str[,server=on|off],addr.type=inet,addr.host=host,addr.port=port[,addr.to=maxport][,addr.numeric=on|off][,addr.keep-alive=on|off][,addr.mptcp=on|off][,addr.ipv4=on|off][,addr.ipv6=on|off][,reconnect-ms=milliseconds]\n" + "-netdev stream,id=str[,server=on|off],addr.type=inet,addr.host=host,addr.port=port[,addr.to=maxport][,addr.numeric=on|off][,addr.keep-alive=on|off][,addr.keep-alive-count=count][,addr.keep-alive-idle=idle][,addr.keep-alive-interval=interval][,addr.mptcp=on|off][,addr.ipv4=on|off][,addr.ipv6=on|off][,reconnect-ms=milliseconds]\n" "-netdev stream,id=str[,server=on|off],addr.type=unix,addr.path=path[,addr.abstract=on|off][,addr.tight=on|off][,reconnect-ms=milliseconds]\n" "-netdev stream,id=str[,server=on|off],addr.type=fd,addr.str=file-descriptor[,reconnect-ms=milliseconds]\n" " configure a network backend to connect to another network\n" @@ -3640,7 +3640,7 @@ SRST -device e1000,netdev=n1,mac=52:54:00:12:34:56 \\ -netdev socket,id=n1,mcast=239.192.168.1:1102,localaddr=1.2.3.4 -``-netdev stream,id=str[,server=on|off],addr.type=inet,addr.host=host,addr.port=port[,addr.to=maxport][,addr.numeric=on|off][,addr.keep-alive=on|off][,addr.mptcp=on|off][,addr.ipv4=on|off][,addr.ipv6=on|off][,reconnect-ms=milliseconds]`` +``-netdev stream,id=str[,server=on|off],addr.type=inet,addr.host=host,addr.port=port[,addr.to=maxport][,addr.numeric=on|off][,addr.keep-alive=on|off][,addr.keep-alive-count=count][,addr.keep-alive-idle=idle][,addr.keep-alive-interval=interval][,addr.mptcp=on|off][,addr.ipv4=on|off][,addr.ipv6=on|off][,reconnect-ms=milliseconds]`` Configure a network backend to connect to another QEMU virtual machine or a proxy using a TCP/IP socket. ``server=on|off`` @@ -3656,7 +3656,19 @@ SRST if ``on`` ``host`` and ``port`` are guaranteed to be numeric, otherwise a name resolution should be attempted (default: ``off``) ``addr.keep-alive=on|off`` - enable keep-alive when connecting to this socket. Not supported for passive sockets. + enable keep-alive when connecting to this socket. + + ``addr.keep-alive-count=count`` + number of keep-alive packets to send before dropping the connection. + Set to 0 to use the system default. (default: 0) + + ``addr.keep-alive-idle=idle`` + time in seconds the connection needs to be idle before sending keep-alive packets. + Set to 0 to use the system default. (default: 0) + + ``addr.keep-alive-interval=interval`` + time in seconds between individual keep-alive packets. + Set to 0 to use the system default. (default: 0) ``addr.mptcp=on|off`` enable multipath TCP -- 2.43.0
