diff options
author | Lennart Poettering <lennart@poettering.net> | 2020-04-21 10:27:23 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2020-04-21 17:08:02 +0200 |
commit | 4c4520789d2bfa3fa51b38b826cac2efb5a4d252 (patch) | |
tree | 56108a525f543adb297a3f980f4f0ddb08ab6013 /src/resolve | |
parent | 052740e2e35cf9bbb56e8809050faf0c6ee60cb4 (diff) | |
download | systemd-4c4520789d2bfa3fa51b38b826cac2efb5a4d252.tar.gz |
resolved: replace private log level control API with generic one
The property was just added, let's replace it again. Given that it was
never released this should not be an API breakage.
Diffstat (limited to 'src/resolve')
-rw-r--r-- | src/resolve/resolvectl.c | 8 | ||||
-rw-r--r-- | src/resolve/resolved-bus.c | 58 |
2 files changed, 9 insertions, 57 deletions
diff --git a/src/resolve/resolvectl.c b/src/resolve/resolvectl.c index 831901e9b4..8abaeb5f1c 100644 --- a/src/resolve/resolvectl.c +++ b/src/resolve/resolvectl.c @@ -2529,8 +2529,8 @@ static int verb_log_level(int argc, char *argv[], void *userdata) { r = sd_bus_get_property_string( bus, "org.freedesktop.resolve1", - "/org/freedesktop/resolve1", - "org.freedesktop.resolve1.Manager", + "/org/freedesktop/LogControl1", + "org.freedesktop.LogControl1", "LogLevel", &error, &level); @@ -2545,8 +2545,8 @@ static int verb_log_level(int argc, char *argv[], void *userdata) { r = sd_bus_set_property( bus, "org.freedesktop.resolve1", - "/org/freedesktop/resolve1", - "org.freedesktop.resolve1.Manager", + "/org/freedesktop/LogControl1", + "org.freedesktop.LogControl1", "LogLevel", &error, "s", diff --git a/src/resolve/resolved-bus.c b/src/resolve/resolved-bus.c index badb0ee739..f56166b94c 100644 --- a/src/resolve/resolved-bus.c +++ b/src/resolve/resolved-bus.c @@ -2,6 +2,7 @@ #include "alloc-util.h" #include "bus-common-errors.h" +#include "bus-log-control-api.h" #include "bus-polkit.h" #include "bus-util.h" #include "dns-domain.h" @@ -1836,57 +1837,6 @@ static int bus_method_unregister_service(sd_bus_message *message, void *userdata return call_dnssd_method(m, message, bus_dnssd_method_unregister, error); } -static int property_get_log_level( - sd_bus *bus, - const char *path, - const char *interface, - const char *property, - sd_bus_message *reply, - void *userdata, - sd_bus_error *error) { - - _cleanup_free_ char *t = NULL; - int r; - - assert(bus); - assert(reply); - - r = log_level_to_string_alloc(log_get_max_level(), &t); - if (r < 0) - return r; - - return sd_bus_message_append(reply, "s", t); -} - -static int property_set_log_level( - sd_bus *bus, - const char *path, - const char *interface, - const char *property, - sd_bus_message *value, - void *userdata, - sd_bus_error *error) { - - const char *t; - int r; - - assert(bus); - assert(value); - - r = sd_bus_message_read(value, "s", &t); - if (r < 0) - return r; - - r = log_level_from_string(t); - if (r < 0) - return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid log level '%s'", t); - - log_info("Setting log level to %s.", t); - log_set_max_level(r); - - return 0; -} - static const sd_bus_vtable resolve_vtable[] = { SD_BUS_VTABLE_START(0), SD_BUS_PROPERTY("LLMNRHostname", "s", NULL, offsetof(Manager, llmnr_hostname), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), @@ -1905,8 +1855,6 @@ static const sd_bus_vtable resolve_vtable[] = { SD_BUS_PROPERTY("DNSSECNegativeTrustAnchors", "as", bus_property_get_ntas, 0, 0), SD_BUS_PROPERTY("DNSStubListener", "s", bus_property_get_dns_stub_listener_mode, offsetof(Manager, dns_stub_listener_mode), 0), - SD_BUS_WRITABLE_PROPERTY("LogLevel", "s", property_get_log_level, property_set_log_level, 0, 0), - SD_BUS_METHOD_WITH_NAMES("ResolveHostname", "isit", SD_BUS_PARAM(ifindex) @@ -2121,6 +2069,10 @@ int manager_connect_bus(Manager *m) { if (r < 0) return log_error_errno(r, "Failed to register dnssd enumerator: %m"); + r = bus_log_control_api_register(m->bus); + if (r < 0) + return r; + r = sd_bus_request_name_async(m->bus, NULL, "org.freedesktop.resolve1", 0, NULL, NULL); if (r < 0) return log_error_errno(r, "Failed to request name: %m"); |