On 01/23/2018 02:23 PM, Daniel P. Berrange wrote:
The initial admin protocol support was only integrated into
libvirtd.
This series extracts that code so that it is reusable with all the
daemons we have (and more than we'll get).
In v2:
- Fixed completely broken post-exec restart support for admin servers
- Misc fixes from v1 review
Daniel P. Berrange (11):
admin: move admins server impl/dispatch into src/admin directory
libvirtd: rename virNetServerClient callback impls to match type names
admin: add support for post-exec restart callbacks
util: add virGetUNIXSocketPath helper
rpc: clarify "void *" values passed to client callbacks
rpc: pass virNetServer to post-exec restart callback in typesafe
manner
rpc: annotate various parameters as being required to be non-NULL
rpc: add method for checking if a named server exists
rpc: refactor virNetServer setup for post-exec restarts
logd: add support for admin protocol in virtlogd
lockd: add support for admin protocol in virtlockd
.gitignore | 1 +
cfg.mk | 10 +-
daemon/Makefile.am | 33 +---
daemon/libvirtd.c | 10 +-
daemon/libvirtd.h | 10 --
daemon/remote.c | 6 +-
daemon/remote.h | 6 +-
po/POTFILES.in | 6 +-
src/Makefile.am | 33 +++-
{daemon => src/admin}/admin_server.c | 4 +-
{daemon => src/admin}/admin_server.h | 6 +-
.../admin.c => src/admin/admin_server_dispatch.c | 48 ++++--
.../admin.h => src/admin/admin_server_dispatch.h | 18 +-
src/libvirt-admin.c | 23 ++-
src/libvirt_private.syms | 1 +
src/libvirt_remote.syms | 2 +-
src/locking/lock_daemon.c | 186 +++++++++++++++-----
src/locking/lock_daemon_config.c | 3 +
src/locking/lock_daemon_config.h | 1 +
src/locking/test_virtlockd.aug.in | 4 +
src/locking/virtlockd-admin.socket.in | 10 ++
src/locking/virtlockd.aug | 1 +
src/locking/virtlockd.conf | 6 +
src/locking/virtlockd.service.in | 1 +
src/logging/log_daemon.c | 188 ++++++++++++++++-----
src/logging/log_daemon_config.c | 3 +
src/logging/log_daemon_config.h | 1 +
src/logging/test_virtlogd.aug.in | 4 +
src/logging/virtlogd-admin.socket.in | 10 ++
src/logging/virtlogd.aug | 1 +
src/logging/virtlogd.service.in | 1 +
src/rpc/virnetdaemon.c | 164 ++++++++++--------
src/rpc/virnetdaemon.h | 20 ++-
src/rpc/virnetserver.c | 6 +-
src/rpc/virnetserver.h | 7 +-
src/rpc/virnetserverclient.c | 14 +-
src/rpc/virnetserverclient.h | 23 ++-
src/rpc/virnetserverprogram.h | 3 -
src/util/virutil.c | 45 +++++
src/util/virutil.h | 1 +
tests/virnetdaemontest.c | 37 +++-
41 files changed, 670 insertions(+), 287 deletions(-)
rename {daemon => src/admin}/admin_server.c (99%)
rename {daemon => src/admin}/admin_server.h (96%)
rename daemon/admin.c => src/admin/admin_server_dispatch.c (92%)
rename daemon/admin.h => src/admin/admin_server_dispatch.h (59%)
create mode 100644 src/locking/virtlockd-admin.socket.in
create mode 100644 src/logging/virtlogd-admin.socket.in
ACK if you fix those two alignments in 10/11 and 11/11.
Michal