Given we have the generic interface, let's hook it up everywhere.
This doesnt bother with the Reload() call usually, since that's more
involved, but hooks up the other relevant functions where applicable.
#include "varlink-internal.h"
#include "varlink-io.systemd.UserDatabase.h"
#include "varlink-io.systemd.ManagedOOM.h"
+#include "varlink-io.systemd.service.h"
#include "varlink-util.h"
typedef struct LookupParameters {
r = sd_varlink_server_add_interface_many(
s,
&vl_interface_io_systemd_UserDatabase,
- &vl_interface_io_systemd_ManagedOOM);
+ &vl_interface_io_systemd_ManagedOOM,
+ &vl_interface_io_systemd_service);
if (r < 0)
return log_debug_errno(r, "Failed to add interfaces to varlink server: %m");
"io.systemd.UserDatabase.GetUserRecord", vl_method_get_user_record,
"io.systemd.UserDatabase.GetGroupRecord", vl_method_get_group_record,
"io.systemd.UserDatabase.GetMemberships", vl_method_get_memberships,
- "io.systemd.ManagedOOM.SubscribeManagedOOMCGroups", vl_method_subscribe_managed_oom_cgroups);
+ "io.systemd.ManagedOOM.SubscribeManagedOOMCGroups", vl_method_subscribe_managed_oom_cgroups,
+ "io.systemd.service.Ping", varlink_method_ping,
+ "io.systemd.service.GetEnvironment", varlink_method_get_environment);
if (r < 0)
return log_debug_errno(r, "Failed to register varlink methods: %m");
#include "user-record-util.h"
#include "user-record.h"
#include "user-util.h"
+#include "varlink-io.systemd.service.h"
#include "varlink-io.systemd.UserDatabase.h"
#include "varlink-util.h"
if (r < 0)
return log_error_errno(r, "Failed to allocate varlink server: %m");
- r = sd_varlink_server_add_interface(m->varlink_server, &vl_interface_io_systemd_UserDatabase);
+ r = sd_varlink_server_add_interface_many(
+ m->varlink_server,
+ &vl_interface_io_systemd_UserDatabase,
+ &vl_interface_io_systemd_service);
if (r < 0)
return log_error_errno(r, "Failed to add UserDatabase interface to varlink server: %m");
m->varlink_server,
"io.systemd.UserDatabase.GetUserRecord", vl_method_get_user_record,
"io.systemd.UserDatabase.GetGroupRecord", vl_method_get_group_record,
- "io.systemd.UserDatabase.GetMemberships", vl_method_get_memberships);
+ "io.systemd.UserDatabase.GetMemberships", vl_method_get_memberships,
+ "io.systemd.service.Ping", varlink_method_ping,
+ "io.systemd.service.SetLogLevel", varlink_method_set_log_level,
+ "io.systemd.service.GetEnvironment", varlink_method_get_environment);
if (r < 0)
return log_error_errno(r, "Failed to register varlink methods: %m");
#include "user-util.h"
#include "utf8.h"
#include "varlink-io.systemd.Hostname.h"
+#include "varlink-io.systemd.service.h"
#include "varlink-util.h"
#include "virt.h"
if (r < 0)
return log_error_errno(r, "Failed to allocate Varlink server: %m");
- r = sd_varlink_server_add_interface(c->varlink_server, &vl_interface_io_systemd_Hostname);
+ r = sd_varlink_server_add_interface_many(
+ c->varlink_server,
+ &vl_interface_io_systemd_Hostname,
+ &vl_interface_io_systemd_service);
if (r < 0)
return log_error_errno(r, "Failed to add Hostname interface to Varlink server: %m");
r = sd_varlink_server_bind_method_many(
c->varlink_server,
- "io.systemd.Hostname.Describe", vl_method_describe);
+ "io.systemd.Hostname.Describe", vl_method_describe,
+ "io.systemd.service.Ping", varlink_method_ping,
+ "io.systemd.service.SetLogLevel", varlink_method_set_log_level,
+ "io.systemd.service.GetEnvironment", varlink_method_get_environment);
if (r < 0)
return log_error_errno(r, "Failed to bind Varlink method calls: %m");
#include "syslog-util.h"
#include "user-util.h"
#include "varlink-io.systemd.Import.h"
+#include "varlink-io.systemd.service.h"
#include "varlink-util.h"
#include "web-util.h"
if (r < 0)
return log_error_errno(r, "Failed to allocate varlink server object: %m");
- r = sd_varlink_server_add_interface(m->varlink_server, &vl_interface_io_systemd_Import);
+ r = sd_varlink_server_add_interface_many(
+ m->varlink_server,
+ &vl_interface_io_systemd_Import,
+ &vl_interface_io_systemd_service);
if (r < 0)
return log_error_errno(r, "Failed to add Import interface to varlink server: %m");
r = sd_varlink_server_bind_method_many(
m->varlink_server,
- "io.systemd.Import.ListTransfers", vl_method_list_transfers,
- "io.systemd.Import.Pull", vl_method_pull);
+ "io.systemd.Import.ListTransfers", vl_method_list_transfers,
+ "io.systemd.Import.Pull", vl_method_pull,
+ "io.systemd.service.Ping", varlink_method_ping,
+ "io.systemd.service.SetLogLevel", varlink_method_set_log_level,
+ "io.systemd.service.GetEnvironment", varlink_method_get_environment);
if (r < 0)
return log_error_errno(r, "Failed to bind Varlink method calls: %m");
#include "uid-classification.h"
#include "user-util.h"
#include "varlink-io.systemd.Journal.h"
+#include "varlink-io.systemd.service.h"
#include "varlink-util.h"
#define USER_JOURNALS_MAX 1024
if (r < 0)
return log_error_errno(r, "Failed to allocate varlink server object: %m");
- r = sd_varlink_server_add_interface(s->varlink_server, &vl_interface_io_systemd_Journal);
+ r = sd_varlink_server_add_interface_many(
+ s->varlink_server,
+ &vl_interface_io_systemd_Journal,
+ &vl_interface_io_systemd_service);
if (r < 0)
return log_error_errno(r, "Failed to add Journal interface to varlink server: %m");
r = sd_varlink_server_bind_method_many(
s->varlink_server,
- "io.systemd.Journal.Synchronize", vl_method_synchronize,
- "io.systemd.Journal.Rotate", vl_method_rotate,
- "io.systemd.Journal.FlushToVar", vl_method_flush_to_var,
- "io.systemd.Journal.RelinquishVar", vl_method_relinquish_var);
+ "io.systemd.Journal.Synchronize", vl_method_synchronize,
+ "io.systemd.Journal.Rotate", vl_method_rotate,
+ "io.systemd.Journal.FlushToVar", vl_method_flush_to_var,
+ "io.systemd.Journal.RelinquishVar", vl_method_relinquish_var,
+ "io.systemd.service.Ping", varlink_method_ping,
+ "io.systemd.service.SetLogLevel", varlink_method_set_log_level,
+ "io.systemd.service.GetEnvironment", varlink_method_get_environment);
if (r < 0)
return r;
#include "terminal-util.h"
#include "user-util.h"
#include "varlink-io.systemd.Login.h"
+#include "varlink-io.systemd.service.h"
#include "varlink-util.h"
static int manager_varlink_get_session_by_peer(
sd_varlink_server_set_userdata(s, m);
- r = sd_varlink_server_add_interface(s, &vl_interface_io_systemd_Login);
+ r = sd_varlink_server_add_interface_many(
+ s,
+ &vl_interface_io_systemd_Login,
+ &vl_interface_io_systemd_service);
if (r < 0)
return log_error_errno(r, "Failed to add Login interface to varlink server: %m");
r = sd_varlink_server_bind_method_many(
s,
- "io.systemd.Login.CreateSession", vl_method_create_session,
- "io.systemd.Login.ReleaseSession", vl_method_release_session);
+ "io.systemd.Login.CreateSession", vl_method_create_session,
+ "io.systemd.Login.ReleaseSession", vl_method_release_session,
+ "io.systemd.service.Ping", varlink_method_ping,
+ "io.systemd.service.SetLogLevel", varlink_method_set_log_level,
+ "io.systemd.service.GetEnvironment", varlink_method_get_environment);
if (r < 0)
return log_error_errno(r, "Failed to register varlink methods: %m");
#include "varlink-io.systemd.Machine.h"
#include "varlink-io.systemd.MachineImage.h"
#include "varlink-io.systemd.UserDatabase.h"
+#include "varlink-io.systemd.service.h"
#include "varlink-util.h"
typedef struct LookupParameters {
r = sd_varlink_server_add_interface_many(
s,
&vl_interface_io_systemd_Machine,
- &vl_interface_io_systemd_MachineImage);
+ &vl_interface_io_systemd_MachineImage,
+ &vl_interface_io_systemd_service);
if (r < 0)
return log_error_errno(r, "Failed to add Machine and MachineImage interfaces to varlink server: %m");
"io.systemd.MachineImage.Update", vl_method_update_image,
"io.systemd.MachineImage.Clone", vl_method_clone_image,
"io.systemd.MachineImage.Remove", vl_method_remove_image,
- "io.systemd.MachineImage.SetPoolLimit", vl_method_set_pool_limit);
+ "io.systemd.MachineImage.SetPoolLimit", vl_method_set_pool_limit,
+ "io.systemd.service.Ping", varlink_method_ping,
+ "io.systemd.service.SetLogLevel", varlink_method_set_log_level,
+ "io.systemd.service.GetEnvironment", varlink_method_get_environment);
if (r < 0)
return log_error_errno(r, "Failed to register varlink methods: %m");
#include "networkd-manager-varlink.h"
#include "stat-util.h"
#include "varlink-io.systemd.Network.h"
+#include "varlink-io.systemd.service.h"
#include "varlink-util.h"
static int vl_method_get_states(sd_varlink *link, sd_json_variant *parameters, sd_varlink_method_flags_t flags, void *userdata) {
(void) sd_varlink_server_set_description(s, "varlink-api-network");
- r = sd_varlink_server_add_interface(s, &vl_interface_io_systemd_Network);
+ r = sd_varlink_server_add_interface_many(
+ s,
+ &vl_interface_io_systemd_Network,
+ &vl_interface_io_systemd_service);
if (r < 0)
return log_error_errno(r, "Failed to add Network interface to varlink server: %m");
r = sd_varlink_server_bind_method_many(
s,
- "io.systemd.Network.GetStates", vl_method_get_states,
- "io.systemd.Network.GetNamespaceId", vl_method_get_namespace_id,
- "io.systemd.Network.GetLLDPNeighbors", vl_method_get_lldp_neighbors,
- "io.systemd.Network.SetPersistentStorage", vl_method_set_persistent_storage);
+ "io.systemd.Network.GetStates", vl_method_get_states,
+ "io.systemd.Network.GetNamespaceId", vl_method_get_namespace_id,
+ "io.systemd.Network.GetLLDPNeighbors", vl_method_get_lldp_neighbors,
+ "io.systemd.Network.SetPersistentStorage", vl_method_set_persistent_storage,
+ "io.systemd.service.Ping", varlink_method_ping,
+ "io.systemd.service.SetLogLevel", varlink_method_set_log_level,
+ "io.systemd.service.GetEnvironment", varlink_method_get_environment);
if (r < 0)
return log_error_errno(r, "Failed to register varlink methods: %m");
#include "path-util.h"
#include "percent-util.h"
#include "varlink-io.systemd.oom.h"
+#include "varlink-io.systemd.service.h"
#include "varlink-util.h"
typedef struct ManagedOOMMessage {
if (r < 0)
return log_error_errno(r, "Failed to allocate varlink server object: %m");
- r = sd_varlink_server_add_interface(s, &vl_interface_io_systemd_oom);
+ r = sd_varlink_server_add_interface_many(
+ s,
+ &vl_interface_io_systemd_oom,
+ &vl_interface_io_systemd_service);
if (r < 0)
- return log_error_errno(r, "Failed to add oom interface to varlink server: %m");
+ return log_error_errno(r, "Failed to add Varlink interfaces to varlink server: %m");
- r = sd_varlink_server_bind_method(s, "io.systemd.oom.ReportManagedOOMCGroups", process_managed_oom_request);
+ r = sd_varlink_server_bind_method_many(
+ s,
+ "io.systemd.oom.ReportManagedOOMCGroups", process_managed_oom_request,
+ "io.systemd.service.Ping", varlink_method_ping,
+ "io.systemd.service.SetLogLevel", varlink_method_set_log_level,
+ "io.systemd.service.GetEnvironment", varlink_method_get_environment);
if (r < 0)
- return log_error_errno(r, "Failed to register varlink method: %m");
+ return log_error_errno(r, "Failed to register varlink methods: %m");
if (fd < 0)
r = sd_varlink_server_listen_address(s, VARLINK_ADDR_PATH_MANAGED_OOM_USER, 0666);
#include "socket-netlink.h"
#include "varlink-io.systemd.Resolve.h"
#include "varlink-io.systemd.Resolve.Monitor.h"
+#include "varlink-io.systemd.service.h"
#include "varlink-util.h"
typedef struct LookupParameters {
if (r < 0)
return log_error_errno(r, "Failed to allocate varlink server object: %m");
- r = sd_varlink_server_add_interface(s, &vl_interface_io_systemd_Resolve);
+ r = sd_varlink_server_add_interface_many(
+ s,
+ &vl_interface_io_systemd_Resolve,
+ &vl_interface_io_systemd_service);
if (r < 0)
return log_error_errno(r, "Failed to add Resolve interface to varlink server: %m");
"io.systemd.Resolve.ResolveHostname", vl_method_resolve_hostname,
"io.systemd.Resolve.ResolveAddress", vl_method_resolve_address,
"io.systemd.Resolve.ResolveService", vl_method_resolve_service,
- "io.systemd.Resolve.ResolveRecord", vl_method_resolve_record);
+ "io.systemd.Resolve.ResolveRecord", vl_method_resolve_record,
+ "io.systemd.service.Ping", varlink_method_ping,
+ "io.systemd.service.SetLogLevel", varlink_method_set_log_level,
+ "io.systemd.service.GetEnvironment", varlink_method_get_environment);
if (r < 0)
return log_error_errno(r, "Failed to register varlink methods: %m");