On 04.02.25 01:26, Eric Blake wrote:
Although defaulting the handshake limit to 10 seconds was a nice QoI
change to weed out intentionally slow clients, it can interfere with
integration testing done with manual NBD_OPT commands over 'nbdsh
--opt-mode'.  Expose a QMP knob 'handshake-max-secs' to allow the user
to alter the timeout away from the default.

The parameter name here intentionally matches the spelling of the
constant added in commit fb1c2aaa98, and not the command-line spelling
added in the previous patch for qemu-nbd; that's because in QMP,
longer names serve as good self-documentation, and unlike the command
line, machines don't have problems generating longer spellings.

Signed-off-by: Eric Blake <ebl...@redhat.com>

Reviewed-by: Vladimir Sementsov-Ogievskiy <vsement...@yandex-team.ru>

(renaming to -seconds is, of course, OK)

---
  qapi/block-export.json         | 10 ++++++++++
  include/block/nbd.h            |  6 +++---

[..]

@@ -52,6 +57,10 @@
  #
  # @addr: Address on which to listen.
  #
+# @handshake-max-secs: Time limit, in seconds, at which a client that
+#     has not completed the negotiation handshake will be disconnected,
+#     or 0 for no limit (since 10.0; default: 10).
+#

Hmm. [not about the series], shouldn't we finally deprecate older interface?

  # @tls-creds: ID of the TLS credentials object (since 2.6).
  #
  # @tls-authz: ID of the QAuthZ authorization object used to validate
@@ -72,6 +81,7 @@
  ##
  { 'command': 'nbd-server-start',
    'data': { 'addr': 'SocketAddressLegacy',

[..]

--
Best regards,
Vladimir


Reply via email to