]> xenbits.xensource.com Git - libvirt.git/commit
rpc: Remove keepalive_required option
authorMartin Kletzander <mkletzan@redhat.com>
Mon, 20 Jul 2015 12:51:24 +0000 (14:51 +0200)
committerMartin Kletzander <mkletzan@redhat.com>
Mon, 10 Aug 2015 11:15:56 +0000 (13:15 +0200)
commita8743c39389b76897811f60dcd8485cd51d76f02
tree8932ec612295a63ad775636be5d30f66515cd021
parentb1ad57ecd2df21a0bdae89a36e3d1daef6023618
rpc: Remove keepalive_required option

Since its introduction in 2011 (particularly in commit f4324e329275),
the option doesn't work.  It just effectively disables all incoming
connections.  That's because the client private data that contain the
'keepalive_supported' boolean, are initialized to zeroes so the bool is
false and the only other place where the bool is used is when checking
whether the client supports keepalive.  Thus, according to the server,
no client supports keepalive.

Removing this instead of fixing it is better because a) apparently
nobody ever tried it since 2011 (4 years without one month) and b) we
cannot know whether the client supports keepalive until we get a ping or
pong keepalive packet.  And that won't happen until after we dispatched
the ConnectOpen call.

Another two reasons would be c) the keepalive_required was tracked on
the server level, but keepalive_supported was in private data of the
client as well as the check that was made in the remote layer, thus
making all other instances of virNetServer miss this feature unless they
all implemented it for themselves and d) we can always add it back in
case there is a request and a use-case for it.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
20 files changed:
daemon/libvirtd-config.c
daemon/libvirtd-config.h
daemon/libvirtd.c
daemon/libvirtd.conf
daemon/libvirtd.h
daemon/remote.c
daemon/test_libvirtd.aug.in
src/libvirt_remote.syms
src/locking/lock_daemon.c
src/lxc/lxc_controller.c
src/rpc/virnetserver.c
src/rpc/virnetserver.h
tests/libvirtdconftest.c
tests/virnetdaemondata/input-data-no-keepalive-required.json [new file with mode: 0644]
tests/virnetdaemondata/output-data-admin-nomdns.json
tests/virnetdaemondata/output-data-anon-clients.json
tests/virnetdaemondata/output-data-initial-nomdns.json
tests/virnetdaemondata/output-data-initial.json
tests/virnetdaemondata/output-data-no-keepalive-required.json [new file with mode: 0644]
tests/virnetdaemontest.c