libvirt/src/admin_protocol-structs
Zhang Bo 29e68c932f admin: Introduce virAdmServerUpdateTlsFiles
The server needs to use CA certificate, CRL, server certificate/key to
complete the TLS handshake. If these files change, we needed to restart
libvirtd for them to take effect. This API can update the TLS context
*ONLINE* without restarting libvirtd.

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Zhang Bo <oscar.zhangbo@huawei.com>
Signed-off-by: Wu Qingliang <wuqingliang4@huawei.com>
2020-03-13 17:07:32 +00:00

167 lines
5.4 KiB
C

/* -*- c -*- */
struct admin_typed_param_value {
int type;
union {
int i;
u_int ui;
int64_t l;
uint64_t ul;
double d;
int b;
admin_nonnull_string s;
} admin_typed_param_value_u;
};
struct admin_typed_param {
admin_nonnull_string field;
admin_typed_param_value value;
};
struct admin_nonnull_server {
admin_nonnull_string name;
};
struct admin_nonnull_client {
admin_nonnull_server srv;
uint64_t id;
int64_t timestamp;
u_int transport;
};
struct admin_connect_open_args {
u_int flags;
};
struct admin_connect_get_lib_version_ret {
uint64_t libVer;
};
struct admin_connect_list_servers_args {
u_int need_results;
u_int flags;
};
struct admin_connect_list_servers_ret {
struct {
u_int servers_len;
admin_nonnull_server * servers_val;
} servers;
u_int ret;
};
struct admin_connect_lookup_server_args {
admin_nonnull_string name;
u_int flags;
};
struct admin_connect_lookup_server_ret {
admin_nonnull_server srv;
};
struct admin_server_get_threadpool_parameters_args {
admin_nonnull_server srv;
u_int flags;
};
struct admin_server_get_threadpool_parameters_ret {
struct {
u_int params_len;
admin_typed_param * params_val;
} params;
};
struct admin_server_set_threadpool_parameters_args {
admin_nonnull_server srv;
struct {
u_int params_len;
admin_typed_param * params_val;
} params;
u_int flags;
};
struct admin_server_list_clients_args {
admin_nonnull_server srv;
u_int need_results;
u_int flags;
};
struct admin_server_list_clients_ret {
struct {
u_int clients_len;
admin_nonnull_client * clients_val;
} clients;
u_int ret;
};
struct admin_server_lookup_client_args {
admin_nonnull_server srv;
uint64_t id;
u_int flags;
};
struct admin_server_lookup_client_ret {
admin_nonnull_client clnt;
};
struct admin_client_get_info_args {
admin_nonnull_client clnt;
u_int flags;
};
struct admin_client_get_info_ret {
struct {
u_int params_len;
admin_typed_param * params_val;
} params;
};
struct admin_client_close_args {
admin_nonnull_client clnt;
u_int flags;
};
struct admin_server_get_client_limits_args {
admin_nonnull_server srv;
u_int flags;
};
struct admin_server_get_client_limits_ret {
struct {
u_int params_len;
admin_typed_param * params_val;
} params;
};
struct admin_server_set_client_limits_args {
admin_nonnull_server srv;
struct {
u_int params_len;
admin_typed_param * params_val;
} params;
u_int flags;
};
struct admin_server_update_tls_files_args {
admin_nonnull_server srv;
u_int flags;
};
struct admin_connect_get_logging_outputs_args {
u_int flags;
};
struct admin_connect_get_logging_outputs_ret {
admin_nonnull_string outputs;
u_int noutputs;
};
struct admin_connect_get_logging_filters_args {
u_int flags;
};
struct admin_connect_get_logging_filters_ret {
admin_string filters;
u_int nfilters;
};
struct admin_connect_set_logging_outputs_args {
admin_string outputs;
u_int flags;
};
struct admin_connect_set_logging_filters_args {
admin_string filters;
u_int flags;
};
enum admin_procedure {
ADMIN_PROC_CONNECT_OPEN = 1,
ADMIN_PROC_CONNECT_CLOSE = 2,
ADMIN_PROC_CONNECT_GET_LIB_VERSION = 3,
ADMIN_PROC_CONNECT_LIST_SERVERS = 4,
ADMIN_PROC_CONNECT_LOOKUP_SERVER = 5,
ADMIN_PROC_SERVER_GET_THREADPOOL_PARAMETERS = 6,
ADMIN_PROC_SERVER_SET_THREADPOOL_PARAMETERS = 7,
ADMIN_PROC_SERVER_LIST_CLIENTS = 8,
ADMIN_PROC_SERVER_LOOKUP_CLIENT = 9,
ADMIN_PROC_CLIENT_GET_INFO = 10,
ADMIN_PROC_CLIENT_CLOSE = 11,
ADMIN_PROC_SERVER_GET_CLIENT_LIMITS = 12,
ADMIN_PROC_SERVER_SET_CLIENT_LIMITS = 13,
ADMIN_PROC_CONNECT_GET_LOGGING_OUTPUTS = 14,
ADMIN_PROC_CONNECT_GET_LOGGING_FILTERS = 15,
ADMIN_PROC_CONNECT_SET_LOGGING_OUTPUTS = 16,
ADMIN_PROC_CONNECT_SET_LOGGING_FILTERS = 17,
ADMIN_PROC_SERVER_UPDATE_TLS_FILES = 18,
};