X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fdbus-manager.c;h=7d4703b88b04e4e0c2baa1036442885bad08745e;hp=1a587197a5e97618df46cd93d6f100044d9838a6;hb=c826cda421f0272275342173e16250adcdf6fbd4;hpb=b4353094e5097c0cb149b5adcffe2a6ba9240283 diff --git a/src/dbus-manager.c b/src/dbus-manager.c index 1a587197a..7d4703b88 100644 --- a/src/dbus-manager.c +++ b/src/dbus-manager.c @@ -156,8 +156,8 @@ " \n" \ " \n" \ " \n" \ - " \n" \ - " \n" \ + " \n" \ + " \n" \ " \n" \ " \n" \ " \n" \ @@ -252,6 +252,18 @@ static int bus_manager_append_log_target(Manager *m, DBusMessageIter *i, const c return 0; } +static int bus_manager_set_log_target(Manager *m, DBusMessageIter *i, const char *property) { + const char *t; + + assert(m); + assert(i); + assert(property); + + dbus_message_iter_get_basic(i, &t); + + return log_set_target_from_string(t); +} + static int bus_manager_append_log_level(Manager *m, DBusMessageIter *i, const char *property, void *data) { const char *t; @@ -267,6 +279,18 @@ static int bus_manager_append_log_level(Manager *m, DBusMessageIter *i, const ch return 0; } +static int bus_manager_set_log_level(Manager *m, DBusMessageIter *i, const char *property) { + const char *t; + + assert(m); + assert(i); + assert(property); + + dbus_message_iter_get_basic(i, &t); + + return log_set_max_level_from_string(t); +} + static int bus_manager_append_n_names(Manager *m, DBusMessageIter *i, const char *property, void *data) { uint32_t u; @@ -341,8 +365,8 @@ static DBusHandlerResult bus_manager_message_handler(DBusConnection *connection, { "org.freedesktop.systemd1.Manager", "InitRDTimestamp", bus_property_append_uint64, "t", &m->initrd_timestamp.realtime }, { "org.freedesktop.systemd1.Manager", "StartupTimestamp", bus_property_append_uint64, "t", &m->startup_timestamp.realtime }, { "org.freedesktop.systemd1.Manager", "FinishTimestamp", bus_property_append_uint64, "t", &m->finish_timestamp.realtime }, - { "org.freedesktop.systemd1.Manager", "LogLevel", bus_manager_append_log_level, "s", NULL }, - { "org.freedesktop.systemd1.Manager", "LogTarget", bus_manager_append_log_target, "s", NULL }, + { "org.freedesktop.systemd1.Manager", "LogLevel", bus_manager_append_log_level, "s", NULL, bus_manager_set_log_level}, + { "org.freedesktop.systemd1.Manager", "LogTarget", bus_manager_append_log_target, "s", NULL, bus_manager_set_log_target}, { "org.freedesktop.systemd1.Manager", "NNames", bus_manager_append_n_names, "u", NULL }, { "org.freedesktop.systemd1.Manager", "NJobs", bus_manager_append_n_jobs, "u", NULL }, { "org.freedesktop.systemd1.Manager", "NInstalledJobs",bus_property_append_uint32, "u", &m->n_installed_jobs },