On 02/05/16 15:59, Michal Privoznik wrote:
On 29.04.2016 14:39, Erik Skultety wrote:
> v2:
> - gendispatch was modified to be able to generate more client related code
>
> - Martin noticed that I added avahi-related field into my tests which caused
> the tests to fail for him, since he doesn't compile with avahi - fixed
>
> - coverity complained that clts might be uninitialized when calling
> virObjectListFreeCount in virAdmServerListClients. Turned out as a
> false-positive, but I wanted to silence it so I reworked the logic so that
> the caller-supplied pointer (initialized to NULL) isn't touched until all the
> memory operations succeeded. That not only didn't help, but since I removed the
> ugly check before virObjectListFreeCount (because the method handles NULL
> well), coverity started to complain that I might assign a signed value to
> an unsigned function argument, which, although being true, is still a false
> positive because the pointer will be NULL and will be handled correctly.
>
> 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 | 23 ++++
> daemon/admin_server.h | 4 +
> daemon/libvirtd.c | 4 +-
> include/libvirt/libvirt-admin.h | 37 ++++++
> 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 | 75 +++++++++--
> 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 | 68 ++++++++++
> .../input-data-client-timestamp.json | 70 ++++++++++
> .../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 | 68 ++++++++++
> .../output-data-client-timestamp.json | 70 ++++++++++
> .../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, 1095 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
>
ACK series
Michal
I fixed 9/9 as you suggested and pushed, thank you for review.
Erik