]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - src/core/dbus-manager.c
tree-wide: remove Lennart's copyright lines
[thirdparty/systemd.git] / src / core / dbus-manager.c
index f7535e38fc96f8f5a46323bf40cc2342e529124e..1363804eac16304cc75c0a2e5b756b6142adfab2 100644 (file)
@@ -1,9 +1,4 @@
 /* SPDX-License-Identifier: LGPL-2.1+ */
-/***
-  This file is part of systemd.
-
-  Copyright 2010 Lennart Poettering
-***/
 
 #include <errno.h>
 #include <sys/prctl.h>
@@ -114,6 +109,7 @@ static int property_set_log_target(
                 void *userdata,
                 sd_bus_error *error) {
 
+        Manager *m = userdata;
         const char *t;
         int r;
 
@@ -124,7 +120,19 @@ static int property_set_log_target(
         if (r < 0)
                 return r;
 
-        return log_set_target_from_string(t);
+        if (isempty(t))
+                manager_restore_original_log_target(m);
+        else {
+                LogTarget target;
+
+                target = log_target_from_string(t);
+                if (target < 0)
+                        return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid log target '%s'", t);
+
+                manager_override_log_target(m, target);
+        }
+
+        return 0;
 }
 
 static int property_get_log_level(
@@ -158,6 +166,7 @@ static int property_set_log_level(
                 void *userdata,
                 sd_bus_error *error) {
 
+        Manager *m = userdata;
         const char *t;
         int r;
 
@@ -168,10 +177,19 @@ static int property_set_log_level(
         if (r < 0)
                 return r;
 
-        r = log_set_max_level_from_string(t);
-        if (r == 0)
-                log_info("Setting log level to %s.", t);
-        return r;
+        if (isempty(t))
+                manager_restore_original_log_level(m);
+        else {
+                int level;
+
+                level = log_level_from_string(t);
+                if (level < 0)
+                        return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid log level '%s'", t);
+
+                manager_override_log_level(m, level);
+        }
+
+        return 0;
 }
 
 static int property_get_progress(
@@ -610,7 +628,7 @@ static int method_set_unit_properties(sd_bus_message *message, void *userdata, s
         if (r < 0)
                 return r;
 
-        r = bus_unit_check_load_state(u, error);
+        r = bus_unit_validate_load_state(u, error);
         if (r < 0)
                 return r;
 
@@ -634,7 +652,7 @@ static int method_ref_unit(sd_bus_message *message, void *userdata, sd_bus_error
         if (r < 0)
                 return r;
 
-        r = bus_unit_check_load_state(u, error);
+        r = bus_unit_validate_load_state(u, error);
         if (r < 0)
                 return r;
 
@@ -658,7 +676,7 @@ static int method_unref_unit(sd_bus_message *message, void *userdata, sd_bus_err
         if (r < 0)
                 return r;
 
-        r = bus_unit_check_load_state(u, error);
+        r = bus_unit_validate_load_state(u, error);
         if (r < 0)
                 return r;