[libvirt] [PATCH 0/9] Admin API: Introduce client listing API

Erik Skultety eskultet at redhat.com
Thu Apr 21 12:37:45 UTC 2016


This series introduces API to list all clients connected to a specific
server. Clients are now identified by 64-bit wide IDs and store their
connection timestamp. Along with these attributes, transport type of the
connection is returned back to the caller as well.

Erik Skultety (9):
  rpc: virnetserverclient: Identify clients by an integer ID
  rpc: virnetserverclient: Introduce new attribute conn_time to client
  admin: Introduce virAdmClient client-side object
  rpc: gendispatch: Tune it to support client structure
  rpc: virnetserver: Support retrieval of a list of clients
  include: admin: export connection transport constants
  rpc: virnetserverclient: Implement client connection transport
    retrieval
  admin: Introduce listing clients
  virt-admin: Introduce srv-clients-list command

 daemon/admin.c                                     |  15 +++
 daemon/admin_server.c                              |  24 ++++
 daemon/admin_server.h                              |   4 +
 daemon/libvirtd.c                                  |   4 +-
 include/libvirt/libvirt-admin.h                    |  36 ++++++
 src/admin/admin_protocol.x                         |  29 ++++-
 src/admin/admin_remote.c                           |   6 +
 src/admin_protocol-structs                         |  19 +++
 src/datatypes.c                                    |  35 +++++
 src/datatypes.h                                    |  47 +++++++
 src/libvirt-admin.c                                | 131 +++++++++++++++++++
 src/libvirt_admin_private.syms                     |   3 +
 src/libvirt_admin_public.syms                      |   5 +
 src/libvirt_remote.syms                            |   2 +
 src/locking/lock_daemon.c                          |   2 +-
 src/logging/log_daemon.c                           |   2 +-
 src/lxc/lxc_controller.c                           |   2 +-
 src/rpc/gendispatch.pl                             |  61 +++++++--
 src/rpc/virnetserver.c                             |  64 +++++++++-
 src/rpc/virnetserver.h                             |   6 +
 src/rpc/virnetserverclient.c                       | 106 ++++++++++++++--
 src/rpc/virnetserverclient.h                       |  10 +-
 tests/Makefile.am                                  |   7 +
 tests/virnetdaemondata/input-data-client-ids.json  |  69 ++++++++++
 .../input-data-client-timestamp.json               |  71 +++++++++++
 .../virnetdaemondata/output-data-admin-nomdns.json |   6 +
 .../output-data-admin-server-names.json            |   6 +
 .../virnetdaemondata/output-data-anon-clients.json |   3 +
 tests/virnetdaemondata/output-data-client-ids.json |  69 ++++++++++
 .../output-data-client-timestamp.json              |  71 +++++++++++
 .../output-data-initial-nomdns.json                |   3 +
 tests/virnetdaemondata/output-data-initial.json    |   3 +
 .../output-data-no-keepalive-required.json         |   6 +
 tests/virnetdaemonmock.c                           |  34 +++++
 tests/virnetdaemontest.c                           |  13 +-
 tests/virnetserverclienttest.c                     |   2 +-
 tools/virt-admin.c                                 | 141 +++++++++++++++++++++
 tools/virt-admin.pod                               |   7 +
 38 files changed, 1085 insertions(+), 39 deletions(-)
 create mode 100644 tests/virnetdaemondata/input-data-client-ids.json
 create mode 100644 tests/virnetdaemondata/input-data-client-timestamp.json
 create mode 100644 tests/virnetdaemondata/output-data-client-ids.json
 create mode 100644 tests/virnetdaemondata/output-data-client-timestamp.json
 create mode 100644 tests/virnetdaemonmock.c

-- 
2.4.11




More information about the libvir-list mailing list